@plusscommunities/pluss-maintenance-app-a 6.0.20 → 6.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/screens/RequestDetail.js +145 -146
- package/dist/module/screens/RequestDetail.js.map +1 -1
- package/dist/module/screens/ServiceRequest.js +8 -4
- package/dist/module/screens/ServiceRequest.js.map +1 -1
- package/dist/module/values.config.a.js +2 -1
- package/dist/module/values.config.a.js.map +1 -1
- package/dist/module/values.config.default.js +2 -1
- package/dist/module/values.config.default.js.map +1 -1
- package/dist/module/values.config.enquiry.js +2 -1
- package/dist/module/values.config.enquiry.js.map +1 -1
- package/dist/module/values.config.feedback.js +2 -1
- package/dist/module/values.config.feedback.js.map +1 -1
- package/dist/module/values.config.food.js +2 -1
- package/dist/module/values.config.food.js.map +1 -1
- package/dist/module/values.config.js +2 -1
- package/dist/module/values.config.js.map +1 -1
- package/package.json +1 -1
- package/src/screens/RequestDetail.js +1348 -1125
- package/src/screens/ServiceRequest.js +15 -11
- package/src/values.config.a.js +1 -0
- package/src/values.config.default.js +1 -0
- package/src/values.config.enquiry.js +1 -0
- package/src/values.config.feedback.js +1 -0
- package/src/values.config.food.js +1 -0
- package/src/values.config.js +1 -0
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
2
2
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
3
3
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
4
|
-
import React, { Component } from
|
|
5
|
-
import { ScrollView, View, StyleSheet, Text, KeyboardAvoidingView, TouchableOpacity, ImageBackground, Platform } from
|
|
6
|
-
import DateTimePicker from
|
|
7
|
-
import { Icon } from
|
|
8
|
-
import _ from
|
|
9
|
-
import moment from
|
|
10
|
-
import { connect } from
|
|
11
|
-
import { maintenanceActions } from
|
|
12
|
-
import { jobAdded, jobStatusesUpdate, jobHideSeenUpdate } from
|
|
13
|
-
import StatusSelectorPopup from
|
|
14
|
-
import PrioritySelectorPopup from
|
|
15
|
-
import { getJobStatus, getJobPriority } from
|
|
16
|
-
import { Services } from
|
|
17
|
-
import { Colours, Helper, Components, Config } from
|
|
18
|
-
import { values } from
|
|
4
|
+
import React, { Component } from "react";
|
|
5
|
+
import { ScrollView, View, StyleSheet, Text, KeyboardAvoidingView, TouchableOpacity, ImageBackground, Platform } from "react-native";
|
|
6
|
+
import DateTimePicker from "react-native-modal-datetime-picker";
|
|
7
|
+
import { Icon } from "react-native-elements";
|
|
8
|
+
import _ from "lodash";
|
|
9
|
+
import moment from "moment";
|
|
10
|
+
import { connect } from "react-redux";
|
|
11
|
+
import { maintenanceActions } from "../apis";
|
|
12
|
+
import { jobAdded, jobStatusesUpdate, jobHideSeenUpdate } from "../actions";
|
|
13
|
+
import StatusSelectorPopup from "../components/StatusSelectorPopup";
|
|
14
|
+
import PrioritySelectorPopup from "../components/PrioritySelectorPopup";
|
|
15
|
+
import { getJobStatus, getJobPriority } from "../helper";
|
|
16
|
+
import { Services } from "../feature.config";
|
|
17
|
+
import { Colours, Helper, Components, Config } from "../core.config";
|
|
18
|
+
import { values } from "../values.config";
|
|
19
19
|
class RequestDetail extends Component {
|
|
20
20
|
constructor(props) {
|
|
21
21
|
super(props);
|
|
@@ -31,14 +31,14 @@ class RequestDetail extends Component {
|
|
|
31
31
|
// Refresh external sync data when job is refreshed
|
|
32
32
|
this.getExternalSync();
|
|
33
33
|
} catch (error) {
|
|
34
|
-
console.log(
|
|
34
|
+
console.log("getJob error", error.toString());
|
|
35
35
|
// check for 403 or 404 error
|
|
36
36
|
if (error.response.status === 403 || error.response.status === 404) {
|
|
37
37
|
this.setState({
|
|
38
38
|
forbidden: true
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
-
console.log(
|
|
41
|
+
console.log("getJob error", error);
|
|
42
42
|
} finally {
|
|
43
43
|
this.setState({
|
|
44
44
|
loading: false
|
|
@@ -54,7 +54,7 @@ class RequestDetail extends Component {
|
|
|
54
54
|
assignees: res.data.Users
|
|
55
55
|
});
|
|
56
56
|
} catch (error) {
|
|
57
|
-
console.log(
|
|
57
|
+
console.log("getAssignees error", error);
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
_defineProperty(this, "getExternalSync", async () => {
|
|
@@ -75,7 +75,7 @@ class RequestDetail extends Component {
|
|
|
75
75
|
var _error$response;
|
|
76
76
|
// 404 is expected if no sync - don't show error
|
|
77
77
|
if (((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.status) !== 404) {
|
|
78
|
-
console.log(
|
|
78
|
+
console.log("getExternalSync error", error);
|
|
79
79
|
}
|
|
80
80
|
this.setState({
|
|
81
81
|
loadingExternalSync: false
|
|
@@ -101,7 +101,7 @@ class RequestDetail extends Component {
|
|
|
101
101
|
const updated = {
|
|
102
102
|
id: job.id,
|
|
103
103
|
seen: true,
|
|
104
|
-
status: job.status ||
|
|
104
|
+
status: job.status || "Unassigned"
|
|
105
105
|
};
|
|
106
106
|
const res = await maintenanceActions.editJob(updated, user.site);
|
|
107
107
|
// console.log('markSeen updated');
|
|
@@ -112,7 +112,7 @@ class RequestDetail extends Component {
|
|
|
112
112
|
seen: true
|
|
113
113
|
});
|
|
114
114
|
} catch (error) {
|
|
115
|
-
console.log(
|
|
115
|
+
console.log("markSeen error", error);
|
|
116
116
|
this.setState({
|
|
117
117
|
loading: false
|
|
118
118
|
});
|
|
@@ -140,7 +140,7 @@ class RequestDetail extends Component {
|
|
|
140
140
|
this.props.jobAdded(res.data.job);
|
|
141
141
|
this.getJob();
|
|
142
142
|
} catch (error) {
|
|
143
|
-
console.log(
|
|
143
|
+
console.log("updateJob error", error);
|
|
144
144
|
} finally {
|
|
145
145
|
this.setState({
|
|
146
146
|
loading: false
|
|
@@ -157,7 +157,7 @@ class RequestDetail extends Component {
|
|
|
157
157
|
this.props.jobAdded(res.data.job);
|
|
158
158
|
this.getJob();
|
|
159
159
|
} catch (error) {
|
|
160
|
-
console.log(
|
|
160
|
+
console.log("updateJobStatus error", error);
|
|
161
161
|
} finally {
|
|
162
162
|
this.setState({
|
|
163
163
|
loading: false
|
|
@@ -174,7 +174,7 @@ class RequestDetail extends Component {
|
|
|
174
174
|
this.props.jobAdded(res.data.job);
|
|
175
175
|
this.getJob();
|
|
176
176
|
} catch (error) {
|
|
177
|
-
console.log(
|
|
177
|
+
console.log("updateJobPriority error", error);
|
|
178
178
|
} finally {
|
|
179
179
|
this.setState({
|
|
180
180
|
loading: false
|
|
@@ -231,7 +231,7 @@ class RequestDetail extends Component {
|
|
|
231
231
|
});
|
|
232
232
|
_defineProperty(this, "onOpenDatePicker", () => {
|
|
233
233
|
this.setState({
|
|
234
|
-
popUpType:
|
|
234
|
+
popUpType: "date",
|
|
235
235
|
isDateTimePickerVisible: true
|
|
236
236
|
});
|
|
237
237
|
});
|
|
@@ -241,11 +241,11 @@ class RequestDetail extends Component {
|
|
|
241
241
|
});
|
|
242
242
|
});
|
|
243
243
|
_defineProperty(this, "onDateSelected", date => {
|
|
244
|
-
if (this.state.popUpType ===
|
|
244
|
+
if (this.state.popUpType === "date") {
|
|
245
245
|
date = moment(date);
|
|
246
246
|
this.setState({
|
|
247
247
|
expectedDate: date,
|
|
248
|
-
expectedDateText: date.format(
|
|
248
|
+
expectedDateText: date.format("DD/MM/YYYY"),
|
|
249
249
|
isDateTimePickerVisible: false
|
|
250
250
|
}, () => {
|
|
251
251
|
this.updateJob();
|
|
@@ -279,7 +279,7 @@ class RequestDetail extends Component {
|
|
|
279
279
|
this.props.jobAdded(job.data);
|
|
280
280
|
this.getJob();
|
|
281
281
|
} catch (error) {
|
|
282
|
-
console.log(
|
|
282
|
+
console.log("onCommentAdded error", error);
|
|
283
283
|
} finally {
|
|
284
284
|
this.setState({
|
|
285
285
|
loading: false
|
|
@@ -303,7 +303,7 @@ class RequestDetail extends Component {
|
|
|
303
303
|
return false;
|
|
304
304
|
});
|
|
305
305
|
_defineProperty(this, "toggleFullscreenVideo", url => {
|
|
306
|
-
if (typeof url !==
|
|
306
|
+
if (typeof url !== "string") url = "";
|
|
307
307
|
this.setState({
|
|
308
308
|
showFullscreenVideo: url.length > 0,
|
|
309
309
|
currentVideoUrl: url
|
|
@@ -316,10 +316,10 @@ class RequestDetail extends Component {
|
|
|
316
316
|
name: a.displayName
|
|
317
317
|
};
|
|
318
318
|
});
|
|
319
|
-
Services.navigation.navigate(
|
|
319
|
+
Services.navigation.navigate("optionSelector", {
|
|
320
320
|
options,
|
|
321
321
|
selection: this.state.job.AssigneeId,
|
|
322
|
-
title:
|
|
322
|
+
title: "Assign request",
|
|
323
323
|
onSelect: this.onSelectAssignee
|
|
324
324
|
});
|
|
325
325
|
});
|
|
@@ -328,12 +328,12 @@ class RequestDetail extends Component {
|
|
|
328
328
|
loading: true
|
|
329
329
|
}, async () => {
|
|
330
330
|
try {
|
|
331
|
-
console.log(
|
|
331
|
+
console.log("onSelectAssignee", this.props.job.id, assignee.key);
|
|
332
332
|
const res = await maintenanceActions.assignJob(this.props.job.id, assignee.key);
|
|
333
333
|
this.props.jobAdded(res.data.job);
|
|
334
334
|
this.getJob();
|
|
335
335
|
} catch (error) {
|
|
336
|
-
console.log(
|
|
336
|
+
console.log("onSelectAssignee error", error);
|
|
337
337
|
} finally {
|
|
338
338
|
this.setState({
|
|
339
339
|
loading: false
|
|
@@ -344,18 +344,18 @@ class RequestDetail extends Component {
|
|
|
344
344
|
this.state = {
|
|
345
345
|
job: {},
|
|
346
346
|
isDateTimePickerVisible: false,
|
|
347
|
-
popUpType:
|
|
348
|
-
status:
|
|
349
|
-
priority:
|
|
347
|
+
popUpType: "",
|
|
348
|
+
status: "",
|
|
349
|
+
priority: "",
|
|
350
350
|
expectedDate: null,
|
|
351
|
-
expectedDateText:
|
|
351
|
+
expectedDateText: "",
|
|
352
352
|
seen: false,
|
|
353
353
|
showMore: true,
|
|
354
354
|
showStatusPopup: false,
|
|
355
355
|
showPriorityPopup: false,
|
|
356
356
|
loading: false,
|
|
357
357
|
showFullscreenVideo: false,
|
|
358
|
-
currentVideoUrl:
|
|
358
|
+
currentVideoUrl: "",
|
|
359
359
|
galleryOpen: false,
|
|
360
360
|
galleryImages: [],
|
|
361
361
|
showMessages: false,
|
|
@@ -388,7 +388,7 @@ class RequestDetail extends Component {
|
|
|
388
388
|
};
|
|
389
389
|
if (job.expectedDate) {
|
|
390
390
|
newState.expectedDate = moment(job.expectedDate);
|
|
391
|
-
newState.expectedDateText = newState.expectedDate.format(
|
|
391
|
+
newState.expectedDateText = newState.expectedDate.format("DD/MM/YYYY");
|
|
392
392
|
}
|
|
393
393
|
if (job.seen) newState.seen = job.seen;
|
|
394
394
|
this.setState(newState, () => {
|
|
@@ -420,7 +420,7 @@ class RequestDetail extends Component {
|
|
|
420
420
|
const statusOption = getJobStatus(status, this.props);
|
|
421
421
|
const priority = getJobPriority(job.priority);
|
|
422
422
|
const canEdit = this.hasPermission();
|
|
423
|
-
const isStaff = this.props.user.category ===
|
|
423
|
+
const isStaff = this.props.user.category === "staff";
|
|
424
424
|
const showSeen = !status || status === getJobStatus(null, this.props).text;
|
|
425
425
|
return /*#__PURE__*/React.createElement(View, {
|
|
426
426
|
style: {
|
|
@@ -465,7 +465,7 @@ class RequestDetail extends Component {
|
|
|
465
465
|
style: styles.textSectionTextContainer
|
|
466
466
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
467
467
|
style: styles.textSectionText
|
|
468
|
-
}, moment(job.lastActivityUnix).format(
|
|
468
|
+
}, moment(job.lastActivityUnix).format("ddd D MMMM, h:mm A"))))), /*#__PURE__*/React.createElement(View, {
|
|
469
469
|
style: styles.jobInfoContainer
|
|
470
470
|
}, /*#__PURE__*/React.createElement(View, {
|
|
471
471
|
style: styles.jobStatusExpectedContainer
|
|
@@ -587,7 +587,7 @@ class RequestDetail extends Component {
|
|
|
587
587
|
style: styles.documentTypeText
|
|
588
588
|
}, document.ext)), /*#__PURE__*/React.createElement(Text, {
|
|
589
589
|
style: styles.documentText
|
|
590
|
-
}, `${document.name}${document.uploading ? ` - ${document.uploadProgress}` :
|
|
590
|
+
}, `${document.name}${document.uploading ? ` - ${document.uploadProgress}` : ""}`));
|
|
591
591
|
});
|
|
592
592
|
}
|
|
593
593
|
return null;
|
|
@@ -632,7 +632,7 @@ class RequestDetail extends Component {
|
|
|
632
632
|
return /*#__PURE__*/React.createElement(Components.FormCardSectionOptionLauncher, {
|
|
633
633
|
onPress: this.onOpenAssigneePicker,
|
|
634
634
|
title: "Assigned To",
|
|
635
|
-
value: job.Assignee ? job.Assignee.displayName :
|
|
635
|
+
value: job.Assignee ? job.Assignee.displayName : "Unassigned",
|
|
636
636
|
textStyle: styles.detailsText,
|
|
637
637
|
sectionStyle: styles.detailsSection
|
|
638
638
|
}, content);
|
|
@@ -680,7 +680,7 @@ class RequestDetail extends Component {
|
|
|
680
680
|
style: styles.externalSyncLabel
|
|
681
681
|
}, "Synced:"), /*#__PURE__*/React.createElement(Text, {
|
|
682
682
|
style: styles.externalSyncValue
|
|
683
|
-
}, moment(externalSync.syncedAt).format(
|
|
683
|
+
}, moment(externalSync.syncedAt).format("D MMM YYYY h:mma")))));
|
|
684
684
|
}
|
|
685
685
|
renderCustomFields() {
|
|
686
686
|
const {
|
|
@@ -691,27 +691,27 @@ class RequestDetail extends Component {
|
|
|
691
691
|
} = job;
|
|
692
692
|
const renderAnswer = field => {
|
|
693
693
|
switch (field.type) {
|
|
694
|
-
case
|
|
694
|
+
case "date":
|
|
695
695
|
return /*#__PURE__*/React.createElement(Text, {
|
|
696
696
|
style: styles.customText
|
|
697
|
-
}, field.answer ? moment(field.answer,
|
|
698
|
-
case
|
|
697
|
+
}, field.answer ? moment(field.answer, "YYYY-MM-DD").format("DD MMM YYYY") : "");
|
|
698
|
+
case "time":
|
|
699
699
|
return /*#__PURE__*/React.createElement(Text, {
|
|
700
700
|
style: styles.customText
|
|
701
|
-
}, field.answer ? moment(field.answer,
|
|
702
|
-
case
|
|
701
|
+
}, field.answer ? moment(field.answer, "HH:mm").format("h:mm a") : "");
|
|
702
|
+
case "yn":
|
|
703
703
|
return /*#__PURE__*/React.createElement(Text, {
|
|
704
704
|
style: styles.customText
|
|
705
|
-
}, field.answer ?
|
|
706
|
-
case
|
|
705
|
+
}, field.answer ? "Yes" : "No");
|
|
706
|
+
case "checkbox":
|
|
707
707
|
return /*#__PURE__*/React.createElement(Text, {
|
|
708
708
|
style: styles.customText
|
|
709
|
-
}, field.answer && Array.isArray(field.answer) ? field.answer.join(
|
|
710
|
-
case
|
|
709
|
+
}, field.answer && Array.isArray(field.answer) ? field.answer.join(", ") : "");
|
|
710
|
+
case "image":
|
|
711
711
|
return /*#__PURE__*/React.createElement(View, {
|
|
712
712
|
style: styles.customImage
|
|
713
713
|
}, this.renderImage(field.answer));
|
|
714
|
-
case
|
|
714
|
+
case "document":
|
|
715
715
|
return /*#__PURE__*/React.createElement(View, {
|
|
716
716
|
style: styles.customDocument
|
|
717
717
|
}, this.renderDocument(field.answer));
|
|
@@ -722,8 +722,8 @@ class RequestDetail extends Component {
|
|
|
722
722
|
}
|
|
723
723
|
};
|
|
724
724
|
return customFields.map((field, index) => {
|
|
725
|
-
if ([
|
|
726
|
-
if (_.isNil(field.answer) || field.answer ===
|
|
725
|
+
if (["staticTitle", "staticText"].includes(field.type)) return null;
|
|
726
|
+
if (_.isNil(field.answer) || field.answer === "" || Array.isArray(field.answer) && field.answer.length === 0) return null;
|
|
727
727
|
return /*#__PURE__*/React.createElement(View, {
|
|
728
728
|
key: index
|
|
729
729
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
@@ -742,11 +742,10 @@ class RequestDetail extends Component {
|
|
|
742
742
|
return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Components.FormCardSectionOptionLauncher, {
|
|
743
743
|
onPress: this.onToggleDetails,
|
|
744
744
|
title: "Details",
|
|
745
|
-
icon: this.state.showMore ?
|
|
745
|
+
icon: this.state.showMore ? "angle-up" : "angle-down",
|
|
746
746
|
textStyle: styles.detailsText,
|
|
747
747
|
sectionStyle: styles.detailsSection
|
|
748
748
|
}), this.state.showMore && /*#__PURE__*/React.createElement(View, null, hasCustomFields ? this.renderCustomFields() : null, !hasCustomFields ? /*#__PURE__*/React.createElement(React.Fragment, null, this.renderImage(job.images, job.image), !_.isEmpty(job.description) && /*#__PURE__*/React.createElement(Text, {
|
|
749
|
-
numberOfLines: 10,
|
|
750
749
|
style: styles.jobDescriptionText
|
|
751
750
|
}, job.description)) : null, /*#__PURE__*/React.createElement(Text, {
|
|
752
751
|
style: styles.locationLabel
|
|
@@ -785,7 +784,7 @@ class RequestDetail extends Component {
|
|
|
785
784
|
site: this.state.job.site || this.state.job.location,
|
|
786
785
|
live: true,
|
|
787
786
|
refreshFrequency: 10000,
|
|
788
|
-
placeHolder:
|
|
787
|
+
placeHolder: "",
|
|
789
788
|
style: {
|
|
790
789
|
flex: 1,
|
|
791
790
|
paddingHorizontal: 0,
|
|
@@ -805,7 +804,7 @@ class RequestDetail extends Component {
|
|
|
805
804
|
height: 36
|
|
806
805
|
},
|
|
807
806
|
textStyle: {
|
|
808
|
-
color:
|
|
807
|
+
color: "#fff"
|
|
809
808
|
},
|
|
810
809
|
fullWidth: true
|
|
811
810
|
}, "Leave Message"));
|
|
@@ -843,7 +842,7 @@ class RequestDetail extends Component {
|
|
|
843
842
|
return /*#__PURE__*/React.createElement(Components.Forbidden, null);
|
|
844
843
|
}
|
|
845
844
|
return /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
|
|
846
|
-
behavior: Platform.OS ===
|
|
845
|
+
behavior: Platform.OS === "ios" && "padding",
|
|
847
846
|
style: styles.container
|
|
848
847
|
}, /*#__PURE__*/React.createElement(Components.Header, {
|
|
849
848
|
leftIcon: "angle-left",
|
|
@@ -855,7 +854,7 @@ class RequestDetail extends Component {
|
|
|
855
854
|
paddingBottom: 26
|
|
856
855
|
},
|
|
857
856
|
style: {
|
|
858
|
-
height:
|
|
857
|
+
height: "100%"
|
|
859
858
|
}
|
|
860
859
|
}, /*#__PURE__*/React.createElement(View, {
|
|
861
860
|
style: styles.innerContainer
|
|
@@ -871,7 +870,7 @@ class RequestDetail extends Component {
|
|
|
871
870
|
const styles = StyleSheet.create({
|
|
872
871
|
container: {
|
|
873
872
|
flex: 1,
|
|
874
|
-
backgroundColor:
|
|
873
|
+
backgroundColor: "#fff"
|
|
875
874
|
},
|
|
876
875
|
innerContainer: {
|
|
877
876
|
paddingTop: 23,
|
|
@@ -882,49 +881,49 @@ const styles = StyleSheet.create({
|
|
|
882
881
|
paddingHorizontal: 12
|
|
883
882
|
},
|
|
884
883
|
jobIdText: {
|
|
885
|
-
fontFamily:
|
|
884
|
+
fontFamily: "sf-medium",
|
|
886
885
|
fontSize: 12,
|
|
887
886
|
marginBottom: 4
|
|
888
887
|
},
|
|
889
888
|
jobTitleText: {
|
|
890
|
-
fontFamily:
|
|
889
|
+
fontFamily: "sf-semibold",
|
|
891
890
|
fontSize: 20,
|
|
892
891
|
color: Colours.TEXT_DARKEST,
|
|
893
892
|
marginBottom: 8
|
|
894
893
|
},
|
|
895
894
|
jobTypeSeenContainer: {
|
|
896
|
-
flexDirection:
|
|
897
|
-
alignItems:
|
|
895
|
+
flexDirection: "row",
|
|
896
|
+
alignItems: "center"
|
|
898
897
|
},
|
|
899
898
|
jobTypeContainer: {
|
|
900
899
|
padding: 4,
|
|
901
900
|
minWidth: 80,
|
|
902
901
|
maxWidth: 140,
|
|
903
902
|
borderRadius: 4,
|
|
904
|
-
justifyContent:
|
|
903
|
+
justifyContent: "center"
|
|
905
904
|
},
|
|
906
905
|
jobTypeText: {
|
|
907
|
-
fontFamily:
|
|
906
|
+
fontFamily: "sf-semibold",
|
|
908
907
|
fontSize: 12,
|
|
909
|
-
textAlign:
|
|
910
|
-
maxWidth:
|
|
908
|
+
textAlign: "center",
|
|
909
|
+
maxWidth: "100%"
|
|
911
910
|
},
|
|
912
911
|
jobSeenContainer: {
|
|
913
|
-
flexDirection:
|
|
914
|
-
alignItems:
|
|
912
|
+
flexDirection: "row",
|
|
913
|
+
alignItems: "center",
|
|
915
914
|
marginLeft: 10
|
|
916
915
|
},
|
|
917
916
|
jobSeenIcon: {
|
|
918
917
|
fontSize: 12
|
|
919
918
|
},
|
|
920
919
|
jobSeenText: {
|
|
921
|
-
fontFamily:
|
|
920
|
+
fontFamily: "sf-semibold",
|
|
922
921
|
fontSize: 12,
|
|
923
922
|
marginLeft: 4
|
|
924
923
|
},
|
|
925
924
|
jobStatusDateText: {
|
|
926
925
|
marginTop: 8,
|
|
927
|
-
fontFamily:
|
|
926
|
+
fontFamily: "sf-medium",
|
|
928
927
|
fontSize: 13,
|
|
929
928
|
color: Colours.TEXT_LIGHT
|
|
930
929
|
},
|
|
@@ -935,60 +934,60 @@ const styles = StyleSheet.create({
|
|
|
935
934
|
paddingHorizontal: 12
|
|
936
935
|
},
|
|
937
936
|
jobStatusExpectedContainer: {
|
|
938
|
-
flexDirection:
|
|
939
|
-
alignItems:
|
|
940
|
-
justifyContent:
|
|
937
|
+
flexDirection: "row",
|
|
938
|
+
alignItems: "flex-start",
|
|
939
|
+
justifyContent: "space-between"
|
|
941
940
|
},
|
|
942
941
|
jobStatusOuterContainer: {
|
|
943
942
|
// marginRight: 50,
|
|
944
943
|
},
|
|
945
944
|
jobStatusHeading: {
|
|
946
|
-
fontFamily:
|
|
945
|
+
fontFamily: "sf-bold",
|
|
947
946
|
fontSize: 11,
|
|
948
947
|
letterSpacing: 0.8,
|
|
949
948
|
color: Colours.TEXT_DARK,
|
|
950
949
|
marginBottom: 6
|
|
951
950
|
},
|
|
952
951
|
jobStatusContainer: {
|
|
953
|
-
flexDirection:
|
|
954
|
-
alignItems:
|
|
952
|
+
flexDirection: "row",
|
|
953
|
+
alignItems: "center",
|
|
955
954
|
width: 120,
|
|
956
955
|
height: 30,
|
|
957
956
|
paddingHorizontal: 8,
|
|
958
957
|
borderRadius: 4
|
|
959
958
|
},
|
|
960
959
|
jobStatusIcon: {
|
|
961
|
-
color:
|
|
960
|
+
color: "#fff",
|
|
962
961
|
fontSize: 14,
|
|
963
962
|
marginRight: 8
|
|
964
963
|
},
|
|
965
964
|
jobStatusText: {
|
|
966
|
-
color:
|
|
967
|
-
textAlign:
|
|
968
|
-
fontFamily:
|
|
965
|
+
color: "#fff",
|
|
966
|
+
textAlign: "center",
|
|
967
|
+
fontFamily: "sf-semibold",
|
|
969
968
|
fontSize: 13,
|
|
970
969
|
flex: 1,
|
|
971
|
-
textAlign:
|
|
970
|
+
textAlign: "center"
|
|
972
971
|
},
|
|
973
972
|
jobPriorityOuterContainer: {
|
|
974
973
|
marginTop: 12
|
|
975
974
|
},
|
|
976
975
|
jobExpectedDateContainer: {
|
|
977
976
|
backgroundColor: Colours.BOXGREY,
|
|
978
|
-
flexDirection:
|
|
977
|
+
flexDirection: "row",
|
|
979
978
|
width: 115,
|
|
980
979
|
height: 30,
|
|
981
980
|
borderRadius: 4,
|
|
982
|
-
alignItems:
|
|
981
|
+
alignItems: "center",
|
|
983
982
|
paddingLeft: 8
|
|
984
983
|
},
|
|
985
984
|
jobExpectedDate: {
|
|
986
|
-
fontFamily:
|
|
985
|
+
fontFamily: "sf-regular",
|
|
987
986
|
fontSize: 13,
|
|
988
987
|
color: Colours.hexToRGBAstring(Colours.TEXT_DARKEST, 0.5)
|
|
989
988
|
},
|
|
990
989
|
detailsText: {
|
|
991
|
-
fontFamily:
|
|
990
|
+
fontFamily: "sf-semibold",
|
|
992
991
|
fontSize: 16,
|
|
993
992
|
color: Colours.TEXT_DARKEST
|
|
994
993
|
},
|
|
@@ -999,55 +998,55 @@ const styles = StyleSheet.create({
|
|
|
999
998
|
},
|
|
1000
999
|
sideBySideImages: {
|
|
1001
1000
|
flex: 1,
|
|
1002
|
-
flexDirection:
|
|
1003
|
-
justifyContent:
|
|
1001
|
+
flexDirection: "row",
|
|
1002
|
+
justifyContent: "space-between",
|
|
1004
1003
|
marginBottom: 16
|
|
1005
1004
|
},
|
|
1006
1005
|
sideBySideImageContainer: {
|
|
1007
|
-
backgroundColor:
|
|
1008
|
-
width:
|
|
1006
|
+
backgroundColor: "#fff",
|
|
1007
|
+
width: "48%",
|
|
1009
1008
|
height: 150,
|
|
1010
1009
|
borderRadius: 2,
|
|
1011
|
-
overflow:
|
|
1010
|
+
overflow: "hidden"
|
|
1012
1011
|
},
|
|
1013
1012
|
singleImageContainer: {
|
|
1014
|
-
backgroundColor:
|
|
1015
|
-
width:
|
|
1013
|
+
backgroundColor: "#fff",
|
|
1014
|
+
width: "100%",
|
|
1016
1015
|
height: 150,
|
|
1017
1016
|
flex: 1,
|
|
1018
1017
|
borderRadius: 2,
|
|
1019
|
-
overflow:
|
|
1018
|
+
overflow: "hidden",
|
|
1020
1019
|
marginBottom: 16
|
|
1021
1020
|
},
|
|
1022
1021
|
imageContainer: {
|
|
1023
1022
|
height: 150,
|
|
1024
|
-
width:
|
|
1025
|
-
justifyContent:
|
|
1023
|
+
width: "auto",
|
|
1024
|
+
justifyContent: "center"
|
|
1026
1025
|
},
|
|
1027
1026
|
imagePlayContainer: {
|
|
1028
|
-
position:
|
|
1027
|
+
position: "absolute",
|
|
1029
1028
|
top: 0,
|
|
1030
1029
|
left: 0,
|
|
1031
1030
|
right: 0,
|
|
1032
1031
|
bottom: 0,
|
|
1033
|
-
alignItems:
|
|
1034
|
-
justifyContent:
|
|
1032
|
+
alignItems: "center",
|
|
1033
|
+
justifyContent: "center"
|
|
1035
1034
|
},
|
|
1036
1035
|
imageControlIcon: {
|
|
1037
|
-
color:
|
|
1036
|
+
color: "#fff",
|
|
1038
1037
|
fontSize: 30,
|
|
1039
|
-
textShadowColor:
|
|
1038
|
+
textShadowColor: "rgba(0,0,0,0.3)",
|
|
1040
1039
|
textShadowOffset: {
|
|
1041
1040
|
width: 2,
|
|
1042
1041
|
height: 2
|
|
1043
1042
|
}
|
|
1044
1043
|
},
|
|
1045
1044
|
plusImages: {
|
|
1046
|
-
fontFamily:
|
|
1045
|
+
fontFamily: "sf-bold",
|
|
1047
1046
|
fontSize: 32,
|
|
1048
|
-
textAlign:
|
|
1049
|
-
color:
|
|
1050
|
-
textShadowColor:
|
|
1047
|
+
textAlign: "center",
|
|
1048
|
+
color: "#fff",
|
|
1049
|
+
textShadowColor: "rgba(0, 0, 0, 0.5)",
|
|
1051
1050
|
textShadowOffset: {
|
|
1052
1051
|
width: 0,
|
|
1053
1052
|
height: 2
|
|
@@ -1055,64 +1054,64 @@ const styles = StyleSheet.create({
|
|
|
1055
1054
|
textShadowRadius: 8
|
|
1056
1055
|
},
|
|
1057
1056
|
jobDescriptionText: {
|
|
1058
|
-
fontFamily:
|
|
1057
|
+
fontFamily: "sf-medium",
|
|
1059
1058
|
fontSize: 14,
|
|
1060
1059
|
color: Colours.TEXT_LIGHT,
|
|
1061
1060
|
paddingBottom: 16
|
|
1062
1061
|
},
|
|
1063
1062
|
locationLabel: {
|
|
1064
|
-
fontFamily:
|
|
1063
|
+
fontFamily: "sf-bold",
|
|
1065
1064
|
fontSize: 14,
|
|
1066
1065
|
color: Colours.TEXT_DARKEST
|
|
1067
1066
|
},
|
|
1068
1067
|
locationText: {
|
|
1069
|
-
fontFamily:
|
|
1068
|
+
fontFamily: "sf-regular",
|
|
1070
1069
|
fontSize: 16,
|
|
1071
1070
|
color: Colours.TEXT_DARKEST,
|
|
1072
1071
|
paddingVertical: 8
|
|
1073
1072
|
},
|
|
1074
1073
|
requesterLabel: {
|
|
1075
|
-
fontFamily:
|
|
1074
|
+
fontFamily: "sf-bold",
|
|
1076
1075
|
fontSize: 14,
|
|
1077
1076
|
color: Colours.TEXT_DARKEST,
|
|
1078
1077
|
paddingVertical: 10
|
|
1079
1078
|
},
|
|
1080
1079
|
profileContainer: {
|
|
1081
|
-
flexDirection:
|
|
1082
|
-
alignItems:
|
|
1080
|
+
flexDirection: "row",
|
|
1081
|
+
alignItems: "center"
|
|
1083
1082
|
},
|
|
1084
1083
|
nameContainer: {
|
|
1085
1084
|
marginLeft: 18
|
|
1086
1085
|
},
|
|
1087
1086
|
nameText: {
|
|
1088
|
-
fontSize:
|
|
1087
|
+
fontSize: "sf-semibold",
|
|
1089
1088
|
fontSize: 14,
|
|
1090
1089
|
color: Colours.TEXT_DARKEST,
|
|
1091
1090
|
marginBottom: 4
|
|
1092
1091
|
},
|
|
1093
1092
|
phoneText: {
|
|
1094
|
-
fontSize:
|
|
1093
|
+
fontSize: "sf-medium",
|
|
1095
1094
|
fontSize: 14,
|
|
1096
1095
|
color: Colours.TEXT_LIGHT
|
|
1097
1096
|
},
|
|
1098
1097
|
textSectionInner: {
|
|
1099
|
-
flexDirection:
|
|
1100
|
-
justifyContent:
|
|
1101
|
-
alignItems:
|
|
1098
|
+
flexDirection: "row",
|
|
1099
|
+
justifyContent: "space-between",
|
|
1100
|
+
alignItems: "center",
|
|
1102
1101
|
marginTop: 8
|
|
1103
1102
|
},
|
|
1104
1103
|
textSectionLabel: {
|
|
1105
|
-
fontFamily:
|
|
1104
|
+
fontFamily: "sf-semibold",
|
|
1106
1105
|
fontSize: 12,
|
|
1107
1106
|
lineHeight: 24,
|
|
1108
1107
|
color: Colours.TEXT_DARKEST
|
|
1109
1108
|
},
|
|
1110
1109
|
textSectionTextContainer: {
|
|
1111
|
-
flexDirection:
|
|
1112
|
-
alignItems:
|
|
1110
|
+
flexDirection: "row",
|
|
1111
|
+
alignItems: "center"
|
|
1113
1112
|
},
|
|
1114
1113
|
textSectionText: {
|
|
1115
|
-
fontFamily:
|
|
1114
|
+
fontFamily: "sf-regular",
|
|
1116
1115
|
fontSize: 13,
|
|
1117
1116
|
lineHeight: 24,
|
|
1118
1117
|
color: Colours.TEXT_LIGHT
|
|
@@ -1123,12 +1122,12 @@ const styles = StyleSheet.create({
|
|
|
1123
1122
|
lineHeight: 24
|
|
1124
1123
|
},
|
|
1125
1124
|
customLabel: {
|
|
1126
|
-
fontFamily:
|
|
1125
|
+
fontFamily: "sf-bold",
|
|
1127
1126
|
fontSize: 14,
|
|
1128
1127
|
color: Colours.TEXT_DARKEST
|
|
1129
1128
|
},
|
|
1130
1129
|
customText: {
|
|
1131
|
-
fontFamily:
|
|
1130
|
+
fontFamily: "sf-regular",
|
|
1132
1131
|
fontSize: 16,
|
|
1133
1132
|
color: Colours.TEXT_DARKEST,
|
|
1134
1133
|
paddingVertical: 8
|
|
@@ -1142,59 +1141,59 @@ const styles = StyleSheet.create({
|
|
|
1142
1141
|
},
|
|
1143
1142
|
customStaticTitle: {
|
|
1144
1143
|
fontSize: 20,
|
|
1145
|
-
fontFamily:
|
|
1144
|
+
fontFamily: "sf-semibold",
|
|
1146
1145
|
color: Colours.TEXT_DARKEST,
|
|
1147
1146
|
marginBottom: 10
|
|
1148
1147
|
},
|
|
1149
1148
|
customStaticText: {
|
|
1150
1149
|
fontSize: 17,
|
|
1151
|
-
fontFamily:
|
|
1150
|
+
fontFamily: "sf-regular",
|
|
1152
1151
|
color: Colours.TEXT_DARKEST,
|
|
1153
1152
|
lineHeight: 24,
|
|
1154
1153
|
marginBottom: 10
|
|
1155
1154
|
},
|
|
1156
1155
|
documentContainer: {
|
|
1157
|
-
flexDirection:
|
|
1158
|
-
alignItems:
|
|
1159
|
-
justifyContent:
|
|
1156
|
+
flexDirection: "row",
|
|
1157
|
+
alignItems: "center",
|
|
1158
|
+
justifyContent: "space-between",
|
|
1160
1159
|
paddingVertical: 4
|
|
1161
1160
|
},
|
|
1162
1161
|
documentTypeContainer: {
|
|
1163
1162
|
width: 50,
|
|
1164
1163
|
height: 60,
|
|
1165
|
-
justifyContent:
|
|
1166
|
-
alignItems:
|
|
1164
|
+
justifyContent: "center",
|
|
1165
|
+
alignItems: "center",
|
|
1167
1166
|
borderRadius: 5,
|
|
1168
1167
|
marginRight: 8
|
|
1169
1168
|
},
|
|
1170
1169
|
documentTypeText: {
|
|
1171
|
-
color:
|
|
1172
|
-
fontFamily:
|
|
1173
|
-
textAlign:
|
|
1170
|
+
color: "#fff",
|
|
1171
|
+
fontFamily: "sf-semibold",
|
|
1172
|
+
textAlign: "center"
|
|
1174
1173
|
},
|
|
1175
1174
|
documentText: {
|
|
1176
1175
|
flex: 1,
|
|
1177
|
-
fontFamily:
|
|
1176
|
+
fontFamily: "sf-semibold",
|
|
1178
1177
|
fontSize: 16,
|
|
1179
|
-
color:
|
|
1178
|
+
color: "#65686D"
|
|
1180
1179
|
},
|
|
1181
1180
|
externalSyncContainer: {
|
|
1182
|
-
backgroundColor:
|
|
1181
|
+
backgroundColor: "#fff",
|
|
1183
1182
|
marginTop: 16,
|
|
1184
1183
|
borderRadius: 8,
|
|
1185
1184
|
padding: 16
|
|
1186
1185
|
},
|
|
1187
1186
|
externalSyncHeader: {
|
|
1188
|
-
flexDirection:
|
|
1189
|
-
justifyContent:
|
|
1190
|
-
alignItems:
|
|
1187
|
+
flexDirection: "row",
|
|
1188
|
+
justifyContent: "space-between",
|
|
1189
|
+
alignItems: "center",
|
|
1191
1190
|
marginBottom: 12,
|
|
1192
1191
|
paddingBottom: 12,
|
|
1193
1192
|
borderBottomWidth: 1,
|
|
1194
1193
|
borderBottomColor: Colours.LINEGREY
|
|
1195
1194
|
},
|
|
1196
1195
|
externalSyncTitle: {
|
|
1197
|
-
fontFamily:
|
|
1196
|
+
fontFamily: "sf-semibold",
|
|
1198
1197
|
fontSize: 16,
|
|
1199
1198
|
color: Colours.TEXT_DARKEST
|
|
1200
1199
|
},
|
|
@@ -1205,17 +1204,17 @@ const styles = StyleSheet.create({
|
|
|
1205
1204
|
paddingTop: 4
|
|
1206
1205
|
},
|
|
1207
1206
|
externalSyncRow: {
|
|
1208
|
-
flexDirection:
|
|
1207
|
+
flexDirection: "row",
|
|
1209
1208
|
marginBottom: 10
|
|
1210
1209
|
},
|
|
1211
1210
|
externalSyncLabel: {
|
|
1212
|
-
fontFamily:
|
|
1211
|
+
fontFamily: "sf-semibold",
|
|
1213
1212
|
fontSize: 14,
|
|
1214
1213
|
color: Colours.TEXT_DARK,
|
|
1215
1214
|
width: 100
|
|
1216
1215
|
},
|
|
1217
1216
|
externalSyncValue: {
|
|
1218
|
-
fontFamily:
|
|
1217
|
+
fontFamily: "sf-regular",
|
|
1219
1218
|
fontSize: 14,
|
|
1220
1219
|
color: Colours.TEXT_DARKEST,
|
|
1221
1220
|
flex: 1
|