@plusscommunities/pluss-maintenance-app 2.1.4 → 2.2.1-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.
@@ -1,4 +1,4 @@
1
- import { JOBS_LOADED, JOB_ADDED } from './types';
1
+ import { JOBS_LOADED, JOB_ADDED, JOBS_ADDED } from './types';
2
2
  export const jobsLoaded = jobs => {
3
3
  return {
4
4
  type: JOBS_LOADED,
@@ -11,4 +11,10 @@ export const jobAdded = job => {
11
11
  payload: job
12
12
  };
13
13
  };
14
+ export const jobsAdded = jobs => {
15
+ return {
16
+ type: JOBS_ADDED,
17
+ payload: jobs
18
+ };
19
+ };
14
20
  //# sourceMappingURL=JobActions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["JOBS_LOADED","JOB_ADDED","jobsLoaded","jobs","type","payload","jobAdded","job"],"sources":["JobActions.js"],"sourcesContent":["import { JOBS_LOADED, JOB_ADDED } from './types';\n\nexport const jobsLoaded = jobs => {\n return {\n type: JOBS_LOADED,\n payload: jobs,\n };\n};\n\nexport const jobAdded = job => {\n return {\n type: JOB_ADDED,\n payload: job,\n };\n};\n"],"mappings":"AAAA,SAASA,WAAT,EAAsBC,SAAtB,QAAuC,SAAvC;AAEA,OAAO,MAAMC,UAAU,GAAGC,IAAI,IAAI;EAChC,OAAO;IACLC,IAAI,EAAEJ,WADD;IAELK,OAAO,EAAEF;EAFJ,CAAP;AAID,CALM;AAOP,OAAO,MAAMG,QAAQ,GAAGC,GAAG,IAAI;EAC7B,OAAO;IACLH,IAAI,EAAEH,SADD;IAELI,OAAO,EAAEE;EAFJ,CAAP;AAID,CALM"}
1
+ {"version":3,"names":["JOBS_LOADED","JOB_ADDED","JOBS_ADDED","jobsLoaded","jobs","type","payload","jobAdded","job","jobsAdded"],"sources":["JobActions.js"],"sourcesContent":["import { JOBS_LOADED, JOB_ADDED, JOBS_ADDED } from './types';\n\nexport const jobsLoaded = jobs => {\n return {\n type: JOBS_LOADED,\n payload: jobs,\n };\n};\n\nexport const jobAdded = job => {\n return {\n type: JOB_ADDED,\n payload: job,\n };\n};\n\nexport const jobsAdded = jobs => {\n return {\n type: JOBS_ADDED,\n payload: jobs,\n };\n};\n"],"mappings":"AAAA,SAASA,WAAT,EAAsBC,SAAtB,EAAiCC,UAAjC,QAAmD,SAAnD;AAEA,OAAO,MAAMC,UAAU,GAAGC,IAAI,IAAI;EAChC,OAAO;IACLC,IAAI,EAAEL,WADD;IAELM,OAAO,EAAEF;EAFJ,CAAP;AAID,CALM;AAOP,OAAO,MAAMG,QAAQ,GAAGC,GAAG,IAAI;EAC7B,OAAO;IACLH,IAAI,EAAEJ,SADD;IAELK,OAAO,EAAEE;EAFJ,CAAP;AAID,CALM;AAOP,OAAO,MAAMC,SAAS,GAAGL,IAAI,IAAI;EAC/B,OAAO;IACLC,IAAI,EAAEH,UADD;IAELI,OAAO,EAAEF;EAFJ,CAAP;AAID,CALM"}
@@ -1,3 +1,4 @@
1
1
  export const JOBS_LOADED = 'JOBS_LOADED';
2
2
  export const JOB_ADDED = 'JOB_ADDED';
3
+ export const JOBS_ADDED = 'JOBS_ADDED';
3
4
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["JOBS_LOADED","JOB_ADDED"],"sources":["types.js"],"sourcesContent":["export const JOBS_LOADED = 'JOBS_LOADED';\nexport const JOB_ADDED = 'JOB_ADDED';\n"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,SAAS,GAAG,WAAlB"}
1
+ {"version":3,"names":["JOBS_LOADED","JOB_ADDED","JOBS_ADDED"],"sources":["types.js"],"sourcesContent":["export const JOBS_LOADED = 'JOBS_LOADED';\nexport const JOB_ADDED = 'JOB_ADDED';\nexport const JOBS_ADDED = 'JOBS_ADDED';\n"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,SAAS,GAAG,WAAlB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB"}
@@ -3,7 +3,17 @@
3
3
  // import { authedFunction } from '../js';
4
4
  import { Helper, Session } from '../core.config';
5
5
  export const generalActions = {
6
- getJob: (site, jobId) => {
6
+ getJob: (site, id) => {
7
+ return Session.authedFunction({
8
+ method: 'POST',
9
+ url: Helper.getUrl('maintenance', 'getJob'),
10
+ data: {
11
+ site,
12
+ id
13
+ }
14
+ });
15
+ },
16
+ getJobByJobId: (site, jobId) => {
7
17
  return Session.authedFunction({
8
18
  method: 'POST',
9
19
  url: Helper.getUrl('maintenance', 'getJob'),
@@ -13,12 +23,16 @@ export const generalActions = {
13
23
  }
14
24
  });
15
25
  },
16
- getJobs: site => {
26
+ getJobs: function (site) {
27
+ let status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
28
+ let type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
17
29
  return Session.authedFunction({
18
30
  method: 'POST',
19
31
  url: Helper.getUrl('maintenance', 'getJobs'),
20
32
  data: {
21
- site
33
+ site,
34
+ status,
35
+ type
22
36
  }
23
37
  });
24
38
  },
@@ -1 +1 @@
1
- {"version":3,"names":["Helper","Session","generalActions","getJob","site","jobId","authedFunction","method","url","getUrl","data","getJobs","sendMaintenanceRequest","userID","userName","phone","room","title","description","date","type","images","location","isHome","homeText","request","editJob","job","editJobStatus","id","status","addNote","note","attachments","action","editNote","noteId","deleteNote","getJobTypes"],"sources":["generalActions.js"],"sourcesContent":["// import axios from 'axios';\n// import { getUrl } from './helper';\n// import { authedFunction } from '../js';\nimport { Helper, Session } from '../core.config';\n\nexport const generalActions = {\n getJob: (site, jobId) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'getJob'),\n data: { site, jobId },\n });\n },\n getJobs: site => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'getJobs'),\n data: { site },\n });\n },\n sendMaintenanceRequest: (userID, userName, phone, room, title, description, date, type, images, location, isHome, homeText) => {\n const request = {\n method: 'POST',\n url: Helper.getUrl('maintenance', 'sendMaintenance'),\n data: {\n userID,\n userName,\n phone,\n room,\n title,\n description,\n date,\n type,\n images,\n location,\n isHome,\n homeText,\n },\n };\n return Session.authedFunction(request);\n },\n editJob: (job, site) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'editJob'),\n data: { job, site },\n });\n },\n editJobStatus: (id, status) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'editJobStatus'),\n data: { id, status },\n });\n },\n addNote: (jobId, note, attachments) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n note,\n attachments,\n action: 'AddNote',\n },\n });\n },\n editNote: (jobId, noteId, note, attachments) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n note,\n attachments,\n noteId,\n action: 'EditNote',\n },\n });\n },\n deleteNote: (jobId, noteId) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n noteId,\n action: 'DeleteNote',\n },\n });\n },\n // getWeeklyMenu: async time => {\n // //deprecated\n // return null;\n // },\n getJobTypes: async site => {\n const url = Helper.getUrl('maintenance', 'getjobtypes');\n return Session.authedFunction({\n method: 'POST',\n url,\n data: { site },\n });\n },\n // sendBookingRequest: async bookingInfo => {\n // return authedFunction({\n // method: 'POST',\n // data: {\n // bookingInfo,\n // },\n // url: getUrl('utility', 'sendBookingRequest'),\n // });\n // },\n // getString: async (site, id, useDefault) => {\n // return axios({\n // method: 'GET',\n // url: getUrl('strings', `get/${site}_${id}`, useDefault ? { useDefault } : undefined),\n // }).catch(error => {\n // console.log('getString error', error);\n // throw error;\n // });\n // },\n // getGeneralTerms: async () => {\n // return axios({\n // method: 'GET',\n // url: 'https://pluss.plussapp.com.au/strings-prd/get/plussSpace_termsofuse',\n // });\n // },\n // declineTerms: async (site, userID) => {\n // //deprecated\n // return null;\n // },\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["Helper","Session","generalActions","getJob","site","id","authedFunction","method","url","getUrl","data","getJobByJobId","jobId","getJobs","status","type","sendMaintenanceRequest","userID","userName","phone","room","title","description","date","images","location","isHome","homeText","request","editJob","job","editJobStatus","addNote","note","attachments","action","editNote","noteId","deleteNote","getJobTypes"],"sources":["generalActions.js"],"sourcesContent":["// import axios from 'axios';\n// import { getUrl } from './helper';\n// import { authedFunction } from '../js';\nimport { Helper, Session } from '../core.config';\n\nexport const generalActions = {\n getJob: (site, id) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'getJob'),\n data: { site, id },\n });\n },\n getJobByJobId: (site, jobId) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'getJob'),\n data: { site, jobId },\n });\n },\n getJobs: (site, status = '', type = '') => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'getJobs'),\n data: { site, status, type },\n });\n },\n sendMaintenanceRequest: (userID, userName, phone, room, title, description, date, type, images, location, isHome, homeText) => {\n const request = {\n method: 'POST',\n url: Helper.getUrl('maintenance', 'sendMaintenance'),\n data: {\n userID,\n userName,\n phone,\n room,\n title,\n description,\n date,\n type,\n images,\n location,\n isHome,\n homeText,\n },\n };\n return Session.authedFunction(request);\n },\n editJob: (job, site) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'editJob'),\n data: { job, site },\n });\n },\n editJobStatus: (id, status) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'editJobStatus'),\n data: { id, status },\n });\n },\n addNote: (jobId, note, attachments) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n note,\n attachments,\n action: 'AddNote',\n },\n });\n },\n editNote: (jobId, noteId, note, attachments) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n note,\n attachments,\n noteId,\n action: 'EditNote',\n },\n });\n },\n deleteNote: (jobId, noteId) => {\n return Session.authedFunction({\n method: 'POST',\n url: Helper.getUrl('maintenance', 'requests/note'),\n data: {\n id: jobId,\n noteId,\n action: 'DeleteNote',\n },\n });\n },\n // getWeeklyMenu: async time => {\n // //deprecated\n // return null;\n // },\n getJobTypes: async site => {\n const url = Helper.getUrl('maintenance', 'getjobtypes');\n return Session.authedFunction({\n method: 'POST',\n url,\n data: { site },\n });\n },\n // sendBookingRequest: async bookingInfo => {\n // return authedFunction({\n // method: 'POST',\n // data: {\n // bookingInfo,\n // },\n // url: getUrl('utility', 'sendBookingRequest'),\n // });\n // },\n // getString: async (site, id, useDefault) => {\n // return axios({\n // method: 'GET',\n // url: getUrl('strings', `get/${site}_${id}`, useDefault ? { useDefault } : undefined),\n // }).catch(error => {\n // console.log('getString error', error);\n // throw error;\n // });\n // },\n // getGeneralTerms: async () => {\n // return axios({\n // method: 'GET',\n // url: 'https://pluss.plussapp.com.au/strings-prd/get/plussSpace_termsofuse',\n // });\n // },\n // declineTerms: async (site, userID) => {\n // //deprecated\n // return null;\n // },\n};\n"],"mappings":"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"}
@@ -0,0 +1,249 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import React, { Component } from 'react';
4
+ import { View, Text, TouchableOpacity, Modal } from 'react-native';
5
+ import { connect } from 'react-redux';
6
+ import _ from 'lodash';
7
+ import { generalActions } from '../apis';
8
+ import { Colours, Helper } from '../core.config';
9
+
10
+ class FilterPopupMenu extends Component {
11
+ constructor(props) {
12
+ super(props);
13
+
14
+ _defineProperty(this, "refreshTypes", async () => {
15
+ const {
16
+ data
17
+ } = await generalActions.getJobTypes(Helper.getSite(this.props.site));
18
+ const types = data.map(t => {
19
+ return {
20
+ label: t.typeName,
21
+ value: t.typeName
22
+ };
23
+ });
24
+ types.splice(0, 0, {
25
+ label: 'All',
26
+ value: ''
27
+ }); // console.log('refreshTypes', types);
28
+
29
+ this.setState({
30
+ types
31
+ });
32
+ });
33
+
34
+ _defineProperty(this, "onSelectOption", (key, value) => {
35
+ const newState = {};
36
+ newState[key] = value;
37
+ this.setState(newState);
38
+ });
39
+
40
+ _defineProperty(this, "onDone", () => {
41
+ const {
42
+ onClose
43
+ } = this.props;
44
+ const {
45
+ selectedStatus,
46
+ selectedType
47
+ } = this.state;
48
+ if (onClose) onClose({
49
+ status: selectedStatus,
50
+ type: selectedType
51
+ });
52
+ });
53
+
54
+ this.state = {
55
+ types: props.types || [],
56
+ selectedStatus: props.status || '',
57
+ selectedType: props.type || ''
58
+ };
59
+ this.statusOptions = [{
60
+ label: 'All',
61
+ value: ''
62
+ }, {
63
+ label: 'Incomplete',
64
+ value: 'Unassigned|In Progress'
65
+ }, {
66
+ label: 'Unassigned',
67
+ value: 'Unassigned'
68
+ }, {
69
+ label: 'In Progress',
70
+ value: 'In Progress'
71
+ }, {
72
+ label: 'Completed',
73
+ value: 'Completed'
74
+ }];
75
+ }
76
+
77
+ componentDidMount() {
78
+ if (_.isEmpty(this.state.types)) this.refreshTypes();
79
+ }
80
+
81
+ componentDidUpdate(prevProps) {
82
+ if (prevProps.site !== this.props.site) {
83
+ this.refreshTypes();
84
+ }
85
+ }
86
+
87
+ renderTitle() {
88
+ const {
89
+ title
90
+ } = this.props;
91
+ return /*#__PURE__*/React.createElement(View, {
92
+ style: styles.titleContainer
93
+ }, /*#__PURE__*/React.createElement(Text, {
94
+ style: styles.titleText
95
+ }, title || 'Filter By'));
96
+ }
97
+
98
+ renderCancel() {
99
+ const {
100
+ colourBrandingMain,
101
+ cancelText
102
+ } = this.props;
103
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
104
+ onPress: this.onDone
105
+ }, /*#__PURE__*/React.createElement(View, {
106
+ style: styles.cancelContainer
107
+ }, /*#__PURE__*/React.createElement(Text, {
108
+ style: [styles.cancelText, {
109
+ color: colourBrandingMain
110
+ }]
111
+ }, cancelText || 'Done')));
112
+ }
113
+
114
+ renderOptions(title, options, selectedKey) {
115
+ const {
116
+ colourBrandingMain
117
+ } = this.props;
118
+ return /*#__PURE__*/React.createElement(View, {
119
+ style: styles.optionsContainer
120
+ }, /*#__PURE__*/React.createElement(Text, {
121
+ style: styles.optionsTitle
122
+ }, title), /*#__PURE__*/React.createElement(View, {
123
+ style: styles.options
124
+ }, options.map(o => {
125
+ const selected = this.state[selectedKey];
126
+ const backgroundColor = o.value === selected ? colourBrandingMain : '#fff';
127
+ const color = o.value === selected ? '#fff' : colourBrandingMain;
128
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
129
+ key: o.label,
130
+ onPress: () => this.onSelectOption(selectedKey, o.value)
131
+ }, /*#__PURE__*/React.createElement(View, {
132
+ style: [styles.optionContainer, {
133
+ backgroundColor,
134
+ borderColor: colourBrandingMain
135
+ }]
136
+ }, /*#__PURE__*/React.createElement(Text, {
137
+ style: [styles.optionText, {
138
+ color
139
+ }]
140
+ }, o.label)));
141
+ })));
142
+ }
143
+
144
+ render() {
145
+ return /*#__PURE__*/React.createElement(Modal, {
146
+ visible: true,
147
+ transparent: true,
148
+ animationType: "slide",
149
+ onRequestClose: this.onDone
150
+ }, /*#__PURE__*/React.createElement(View, {
151
+ style: styles.container
152
+ }, /*#__PURE__*/React.createElement(View, {
153
+ style: styles.menu
154
+ }, this.renderTitle(), /*#__PURE__*/React.createElement(View, {
155
+ style: styles.optionContent
156
+ }, this.renderOptions('Status', this.statusOptions, 'selectedStatus'), this.renderOptions('Type', this.state.types, 'selectedType')), this.renderCancel())));
157
+ }
158
+
159
+ }
160
+
161
+ const styles = {
162
+ container: {
163
+ position: 'absolute',
164
+ bottom: 0,
165
+ left: 0,
166
+ right: 0,
167
+ top: 0,
168
+ backgroundColor: 'rgba(0,0,0,0.5)',
169
+ zIndex: 1000
170
+ },
171
+ menu: {
172
+ position: 'absolute',
173
+ bottom: 0,
174
+ left: 0,
175
+ right: 0,
176
+ backgroundColor: '#fff',
177
+ borderTopLeftRadius: 12,
178
+ borderTopRightRadius: 12
179
+ },
180
+ cancelContainer: {
181
+ paddingVertical: 16,
182
+ borderColor: Colours.LINEGREY,
183
+ borderTopWidth: 1,
184
+ paddingHorizontal: 16
185
+ },
186
+ cancelText: {
187
+ fontFamily: 'sf-medium',
188
+ fontSize: 16,
189
+ textAlign: 'center',
190
+ color: Colours.TEXT_DARK
191
+ },
192
+ titleContainer: {
193
+ padding: 16,
194
+ borderColor: Colours.LINEGREY,
195
+ borderBottomWidth: 1
196
+ },
197
+ titleText: {
198
+ fontFamily: 'sf-semibold',
199
+ fontSize: 16,
200
+ textAlign: 'center',
201
+ color: Colours.TEXT_DARK
202
+ },
203
+ optionContent: {
204
+ paddingVertical: 10
205
+ },
206
+ optionsContainer: {
207
+ marginHorizontal: 14
208
+ },
209
+ optionsTitle: {
210
+ fontFamily: 'sf-semibold',
211
+ marginBottom: 4
212
+ },
213
+ options: {
214
+ flex: 1,
215
+ flexDirection: 'row',
216
+ flexWrap: 'wrap'
217
+ },
218
+ optionContainer: {
219
+ flexDirection: 'row',
220
+ alignItems: 'center',
221
+ justifyContent: 'center',
222
+ minWidth: 50,
223
+ height: 30,
224
+ paddingHorizontal: 8,
225
+ borderRadius: 4,
226
+ borderWidth: 1,
227
+ marginRight: 8,
228
+ marginBottom: 8
229
+ },
230
+ optionText: {
231
+ color: '#fff',
232
+ textAlign: 'center',
233
+ fontFamily: 'sf-semibold',
234
+ fontSize: 13
235
+ }
236
+ };
237
+
238
+ const mapStateToProps = state => {
239
+ const {
240
+ user
241
+ } = state;
242
+ return {
243
+ site: user.site,
244
+ colourBrandingMain: Colours.getMainBrandingColourFromState(state)
245
+ };
246
+ };
247
+
248
+ export default connect(mapStateToProps, {})(FilterPopupMenu);
249
+ //# sourceMappingURL=FilterPopupMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Component","View","Text","TouchableOpacity","Modal","connect","_","generalActions","Colours","Helper","FilterPopupMenu","constructor","props","data","getJobTypes","getSite","site","types","map","t","label","typeName","value","splice","setState","key","newState","onClose","selectedStatus","selectedType","state","status","type","statusOptions","componentDidMount","isEmpty","refreshTypes","componentDidUpdate","prevProps","renderTitle","title","styles","titleContainer","titleText","renderCancel","colourBrandingMain","cancelText","onDone","cancelContainer","color","renderOptions","options","selectedKey","optionsContainer","optionsTitle","o","selected","backgroundColor","onSelectOption","optionContainer","borderColor","optionText","render","container","menu","optionContent","position","bottom","left","right","top","zIndex","borderTopLeftRadius","borderTopRightRadius","paddingVertical","LINEGREY","borderTopWidth","paddingHorizontal","fontFamily","fontSize","textAlign","TEXT_DARK","padding","borderBottomWidth","marginHorizontal","marginBottom","flex","flexDirection","flexWrap","alignItems","justifyContent","minWidth","height","borderRadius","borderWidth","marginRight","mapStateToProps","user","getMainBrandingColourFromState"],"sources":["FilterPopupMenu.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Text, TouchableOpacity, Modal } from 'react-native';\nimport { connect } from 'react-redux';\nimport _ from 'lodash';\nimport { generalActions } from '../apis';\nimport { Colours, Helper } from '../core.config';\n\nclass FilterPopupMenu extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n types: props.types || [],\n selectedStatus: props.status || '',\n selectedType: props.type || '',\n };\n this.statusOptions = [\n {\n label: 'All',\n value: '',\n },\n {\n label: 'Incomplete',\n value: 'Unassigned|In Progress',\n },\n {\n label: 'Unassigned',\n value: 'Unassigned',\n },\n {\n label: 'In Progress',\n value: 'In Progress',\n },\n {\n label: 'Completed',\n value: 'Completed',\n },\n ];\n }\n\n componentDidMount() {\n if (_.isEmpty(this.state.types)) this.refreshTypes();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.site !== this.props.site) {\n this.refreshTypes();\n }\n }\n\n refreshTypes = async () => {\n const { data } = await generalActions.getJobTypes(Helper.getSite(this.props.site));\n const types = data.map(t => {\n return { label: t.typeName, value: t.typeName };\n });\n types.splice(0, 0, { label: 'All', value: '' });\n // console.log('refreshTypes', types);\n this.setState({ types });\n };\n\n onSelectOption = (key, value) => {\n const newState = {};\n newState[key] = value;\n this.setState(newState);\n };\n\n onDone = () => {\n const { onClose } = this.props;\n const { selectedStatus, selectedType } = this.state;\n if (onClose)\n onClose({\n status: selectedStatus,\n type: selectedType,\n });\n };\n\n renderTitle() {\n const { title } = this.props;\n return (\n <View style={styles.titleContainer}>\n <Text style={styles.titleText}>{title || 'Filter By'}</Text>\n </View>\n );\n }\n\n renderCancel() {\n const { colourBrandingMain, cancelText } = this.props;\n return (\n <TouchableOpacity onPress={this.onDone}>\n <View style={styles.cancelContainer}>\n <Text style={[styles.cancelText, { color: colourBrandingMain }]}>{cancelText || 'Done'}</Text>\n </View>\n </TouchableOpacity>\n );\n }\n\n renderOptions(title, options, selectedKey) {\n const { colourBrandingMain } = this.props;\n return (\n <View style={styles.optionsContainer}>\n <Text style={styles.optionsTitle}>{title}</Text>\n <View style={styles.options}>\n {options.map(o => {\n const selected = this.state[selectedKey];\n const backgroundColor = o.value === selected ? colourBrandingMain : '#fff';\n const color = o.value === selected ? '#fff' : colourBrandingMain;\n return (\n <TouchableOpacity key={o.label} onPress={() => this.onSelectOption(selectedKey, o.value)}>\n <View style={[styles.optionContainer, { backgroundColor, borderColor: colourBrandingMain }]}>\n <Text style={[styles.optionText, { color }]}>{o.label}</Text>\n </View>\n </TouchableOpacity>\n );\n })}\n </View>\n </View>\n );\n }\n\n render() {\n return (\n <Modal visible transparent animationType=\"slide\" onRequestClose={this.onDone}>\n <View style={styles.container}>\n <View style={styles.menu}>\n {this.renderTitle()}\n <View style={styles.optionContent}>\n {this.renderOptions('Status', this.statusOptions, 'selectedStatus')}\n {this.renderOptions('Type', this.state.types, 'selectedType')}\n </View>\n {this.renderCancel()}\n </View>\n </View>\n </Modal>\n );\n }\n}\n\nconst styles = {\n container: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n backgroundColor: 'rgba(0,0,0,0.5)',\n zIndex: 1000,\n },\n menu: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n backgroundColor: '#fff',\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n cancelContainer: {\n paddingVertical: 16,\n borderColor: Colours.LINEGREY,\n borderTopWidth: 1,\n paddingHorizontal: 16,\n },\n cancelText: {\n fontFamily: 'sf-medium',\n fontSize: 16,\n textAlign: 'center',\n color: Colours.TEXT_DARK,\n },\n titleContainer: {\n padding: 16,\n borderColor: Colours.LINEGREY,\n borderBottomWidth: 1,\n },\n titleText: {\n fontFamily: 'sf-semibold',\n fontSize: 16,\n textAlign: 'center',\n color: Colours.TEXT_DARK,\n },\n optionContent: {\n paddingVertical: 10,\n },\n optionsContainer: {\n marginHorizontal: 14,\n },\n optionsTitle: {\n fontFamily: 'sf-semibold',\n marginBottom: 4,\n },\n options: {\n flex: 1,\n flexDirection: 'row',\n flexWrap: 'wrap',\n },\n optionContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: 50,\n height: 30,\n paddingHorizontal: 8,\n borderRadius: 4,\n borderWidth: 1,\n marginRight: 8,\n marginBottom: 8,\n },\n optionText: {\n color: '#fff',\n textAlign: 'center',\n fontFamily: 'sf-semibold',\n fontSize: 13,\n },\n};\n\nconst mapStateToProps = state => {\n const { user } = state;\n\n return {\n site: user.site,\n colourBrandingMain: Colours.getMainBrandingColourFromState(state),\n };\n};\n\nexport default connect(mapStateToProps, {})(FilterPopupMenu);\n"],"mappings":"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"}