@plusscommunities/pluss-maintenance-app 7.0.2-auth.0 → 7.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/module/apis/index.js +1 -0
  2. package/dist/module/apis/index.js.map +1 -1
  3. package/dist/module/apis/userActions.js +23 -0
  4. package/dist/module/apis/userActions.js.map +1 -0
  5. package/dist/module/index.js +2 -0
  6. package/dist/module/index.js.map +1 -1
  7. package/dist/module/screens/MaintenanceUserPicker.js +130 -0
  8. package/dist/module/screens/MaintenanceUserPicker.js.map +1 -0
  9. package/dist/module/screens/ServiceRequest.js +152 -11
  10. package/dist/module/screens/ServiceRequest.js.map +1 -1
  11. package/dist/module/values.config.a.js +1 -0
  12. package/dist/module/values.config.a.js.map +1 -1
  13. package/dist/module/values.config.default.js +1 -0
  14. package/dist/module/values.config.default.js.map +1 -1
  15. package/dist/module/values.config.enquiry.js +1 -0
  16. package/dist/module/values.config.enquiry.js.map +1 -1
  17. package/dist/module/values.config.feedback.js +1 -0
  18. package/dist/module/values.config.feedback.js.map +1 -1
  19. package/dist/module/values.config.food.js +1 -0
  20. package/dist/module/values.config.food.js.map +1 -1
  21. package/dist/module/values.config.forms.js +1 -0
  22. package/dist/module/values.config.forms.js.map +1 -1
  23. package/dist/module/values.config.js +1 -0
  24. package/dist/module/values.config.js.map +1 -1
  25. package/package.json +3 -7
  26. package/src/apis/index.js +1 -0
  27. package/src/apis/userActions.js +21 -0
  28. package/src/index.js +2 -0
  29. package/src/screens/MaintenanceUserPicker.js +107 -0
  30. package/src/screens/ServiceRequest.js +157 -18
  31. package/src/values.config.a.js +1 -0
  32. package/src/values.config.default.js +1 -0
  33. package/src/values.config.enquiry.js +1 -0
  34. package/src/values.config.feedback.js +1 -0
  35. package/src/values.config.food.js +1 -0
  36. package/src/values.config.forms.js +1 -0
  37. package/src/values.config.js +1 -0
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestFeedback',
17
17
  screenJobTypePicker: 'jobTypePickerFeedback',
18
18
  screenRequestNotes: 'requestNotesFeedback',
19
+ screenUserPicker: 'maintenanceUserPickerFeedback',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingFeedback',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentFeedback',
21
22
  iconGridMenu: 'form',
@@ -1 +1 @@
1
- {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.feedback.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceFeedback',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobsFeedback',\n serviceKey: 'maintenanceFeedback',\n updateKey: 'jobsFeedback',\n commentKey: 'maintenancerequestFeedback',\n actionJobsLoaded: 'JOBS_LOADEDFeedback',\n actionJobAdded: 'JOB_ADDEDFeedback',\n actionJobsAdded: 'JOBS_ADDEDFeedback',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDFeedback',\n actionJobsHideSeen: 'JOBS_HIDE_SEENFeedback',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDFeedback',\n screenMaintenance: 'maintenanceFeedback',\n screenRequestDetail: 'requestDetailFeedback',\n screenServiceRequest: 'serviceRequestFeedback',\n screenJobTypePicker: 'jobTypePickerFeedback',\n screenRequestNotes: 'requestNotesFeedback',\n permissionMaintenanceTracking: 'maintenanceTrackingFeedback',\n permissionMaintenanceAssignment: 'maintenanceAssignmentFeedback',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Feedback',\n textAddMenuTitle: 'New Feedback',\n textMoreMenuTitle: 'Feedback',\n textKioskActionTitle: 'Feedback',\n textEntityName: 'Feedback',\n textJobType: 'Feedback Type',\n emptyRequestsStaff: 'No active Feedback',\n emptyRequestsUser: 'Your Feedback will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusFeedback',\n stringConfigHideSeen: 'maintenanceDisableSeenFeedback',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,qBAAqB;EACjCC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,cAAc;EAC1BC,UAAU,EAAE,qBAAqB;EACjCC,SAAS,EAAE,cAAc;EACzBC,UAAU,EAAE,4BAA4B;EACxCC,gBAAgB,EAAE,qBAAqB;EACvCC,cAAc,EAAE,mBAAmB;EACnCC,eAAe,EAAE,oBAAoB;EACrCC,wBAAwB,EAAE,8BAA8B;EACxDC,kBAAkB,EAAE,wBAAwB;EAC5CC,qBAAqB,EAAE,4BAA4B;EACnDC,iBAAiB,EAAE,qBAAqB;EACxCC,mBAAmB,EAAE,uBAAuB;EAC5CC,oBAAoB,EAAE,wBAAwB;EAC9CC,mBAAmB,EAAE,uBAAuB;EAC5CC,kBAAkB,EAAE,sBAAsB;EAC1CC,6BAA6B,EAAE,6BAA6B;EAC5DC,+BAA+B,EAAE,+BAA+B;EAChEC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,UAAU;EAC5BC,gBAAgB,EAAE,cAAc;EAChCC,iBAAiB,EAAE,UAAU;EAC7BC,oBAAoB,EAAE,UAAU;EAChCC,cAAc,EAAE,UAAU;EAC1BC,WAAW,EAAE,eAAe;EAC5BC,kBAAkB,EAAE,oBAAoB;EACxCC,iBAAiB,EAAE,8BAA8B;EACjDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,8BAA8B;EACrDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAAStC,MAAM","ignoreList":[]}
1
+ {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","screenUserPicker","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.feedback.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceFeedback',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobsFeedback',\n serviceKey: 'maintenanceFeedback',\n updateKey: 'jobsFeedback',\n commentKey: 'maintenancerequestFeedback',\n actionJobsLoaded: 'JOBS_LOADEDFeedback',\n actionJobAdded: 'JOB_ADDEDFeedback',\n actionJobsAdded: 'JOBS_ADDEDFeedback',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDFeedback',\n actionJobsHideSeen: 'JOBS_HIDE_SEENFeedback',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDFeedback',\n screenMaintenance: 'maintenanceFeedback',\n screenRequestDetail: 'requestDetailFeedback',\n screenServiceRequest: 'serviceRequestFeedback',\n screenJobTypePicker: 'jobTypePickerFeedback',\n screenRequestNotes: 'requestNotesFeedback',\n screenUserPicker: 'maintenanceUserPickerFeedback',\n permissionMaintenanceTracking: 'maintenanceTrackingFeedback',\n permissionMaintenanceAssignment: 'maintenanceAssignmentFeedback',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Feedback',\n textAddMenuTitle: 'New Feedback',\n textMoreMenuTitle: 'Feedback',\n textKioskActionTitle: 'Feedback',\n textEntityName: 'Feedback',\n textJobType: 'Feedback Type',\n emptyRequestsStaff: 'No active Feedback',\n emptyRequestsUser: 'Your Feedback will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusFeedback',\n stringConfigHideSeen: 'maintenanceDisableSeenFeedback',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,qBAAqB;EACjCC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,cAAc;EAC1BC,UAAU,EAAE,qBAAqB;EACjCC,SAAS,EAAE,cAAc;EACzBC,UAAU,EAAE,4BAA4B;EACxCC,gBAAgB,EAAE,qBAAqB;EACvCC,cAAc,EAAE,mBAAmB;EACnCC,eAAe,EAAE,oBAAoB;EACrCC,wBAAwB,EAAE,8BAA8B;EACxDC,kBAAkB,EAAE,wBAAwB;EAC5CC,qBAAqB,EAAE,4BAA4B;EACnDC,iBAAiB,EAAE,qBAAqB;EACxCC,mBAAmB,EAAE,uBAAuB;EAC5CC,oBAAoB,EAAE,wBAAwB;EAC9CC,mBAAmB,EAAE,uBAAuB;EAC5CC,kBAAkB,EAAE,sBAAsB;EAC1CC,gBAAgB,EAAE,+BAA+B;EACjDC,6BAA6B,EAAE,6BAA6B;EAC5DC,+BAA+B,EAAE,+BAA+B;EAChEC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,UAAU;EAC5BC,gBAAgB,EAAE,cAAc;EAChCC,iBAAiB,EAAE,UAAU;EAC7BC,oBAAoB,EAAE,UAAU;EAChCC,cAAc,EAAE,UAAU;EAC1BC,WAAW,EAAE,eAAe;EAC5BC,kBAAkB,EAAE,oBAAoB;EACxCC,iBAAiB,EAAE,8BAA8B;EACjDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,8BAA8B;EACrDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAASvC,MAAM","ignoreList":[]}
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestFood',
17
17
  screenJobTypePicker: 'jobTypePickerFood',
18
18
  screenRequestNotes: 'requestNotesFood',
19
+ screenUserPicker: 'maintenanceUserPickerFood',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingFood',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentFood',
21
22
  iconGridMenu: 'form',
@@ -1 +1 @@
1
- {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.food.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceFood',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobsFood',\n serviceKey: 'maintenanceFood',\n updateKey: 'jobsFood',\n commentKey: 'maintenancerequestFood',\n actionJobsLoaded: 'JOBS_LOADEDFood',\n actionJobAdded: 'JOB_ADDEDFood',\n actionJobsAdded: 'JOBS_ADDEDFood',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDFood',\n actionJobsHideSeen: 'JOBS_HIDE_SEENFood',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDFood',\n screenMaintenance: 'maintenanceFood',\n screenRequestDetail: 'requestDetailFood',\n screenServiceRequest: 'serviceRequestFood',\n screenJobTypePicker: 'jobTypePickerFood',\n screenRequestNotes: 'requestNotesFood',\n permissionMaintenanceTracking: 'maintenanceTrackingFood',\n permissionMaintenanceAssignment: 'maintenanceAssignmentFood',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Food Ordering',\n textAddMenuTitle: 'New Food Order',\n textMoreMenuTitle: 'Food Ordering',\n textKioskActionTitle: 'Food Ordering',\n textEntityName: 'Food Order',\n textJobType: 'Food Order Type',\n emptyRequestsStaff: 'No active Food Orders',\n emptyRequestsUser: 'Your Food Orders will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusFood',\n stringConfigHideSeen: 'maintenanceDisableSeenFood',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,iBAAiB;EAC7BC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,UAAU;EACtBC,UAAU,EAAE,iBAAiB;EAC7BC,SAAS,EAAE,UAAU;EACrBC,UAAU,EAAE,wBAAwB;EACpCC,gBAAgB,EAAE,iBAAiB;EACnCC,cAAc,EAAE,eAAe;EAC/BC,eAAe,EAAE,gBAAgB;EACjCC,wBAAwB,EAAE,0BAA0B;EACpDC,kBAAkB,EAAE,oBAAoB;EACxCC,qBAAqB,EAAE,wBAAwB;EAC/CC,iBAAiB,EAAE,iBAAiB;EACpCC,mBAAmB,EAAE,mBAAmB;EACxCC,oBAAoB,EAAE,oBAAoB;EAC1CC,mBAAmB,EAAE,mBAAmB;EACxCC,kBAAkB,EAAE,kBAAkB;EACtCC,6BAA6B,EAAE,yBAAyB;EACxDC,+BAA+B,EAAE,2BAA2B;EAC5DC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,eAAe;EACjCC,gBAAgB,EAAE,gBAAgB;EAClCC,iBAAiB,EAAE,eAAe;EAClCC,oBAAoB,EAAE,eAAe;EACrCC,cAAc,EAAE,YAAY;EAC5BC,WAAW,EAAE,iBAAiB;EAC9BC,kBAAkB,EAAE,uBAAuB;EAC3CC,iBAAiB,EAAE,iCAAiC;EACpDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,0BAA0B;EACjDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAAStC,MAAM","ignoreList":[]}
1
+ {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","screenUserPicker","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.food.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceFood',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobsFood',\n serviceKey: 'maintenanceFood',\n updateKey: 'jobsFood',\n commentKey: 'maintenancerequestFood',\n actionJobsLoaded: 'JOBS_LOADEDFood',\n actionJobAdded: 'JOB_ADDEDFood',\n actionJobsAdded: 'JOBS_ADDEDFood',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDFood',\n actionJobsHideSeen: 'JOBS_HIDE_SEENFood',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDFood',\n screenMaintenance: 'maintenanceFood',\n screenRequestDetail: 'requestDetailFood',\n screenServiceRequest: 'serviceRequestFood',\n screenJobTypePicker: 'jobTypePickerFood',\n screenRequestNotes: 'requestNotesFood',\n screenUserPicker: 'maintenanceUserPickerFood',\n permissionMaintenanceTracking: 'maintenanceTrackingFood',\n permissionMaintenanceAssignment: 'maintenanceAssignmentFood',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Food Ordering',\n textAddMenuTitle: 'New Food Order',\n textMoreMenuTitle: 'Food Ordering',\n textKioskActionTitle: 'Food Ordering',\n textEntityName: 'Food Order',\n textJobType: 'Food Order Type',\n emptyRequestsStaff: 'No active Food Orders',\n emptyRequestsUser: 'Your Food Orders will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusFood',\n stringConfigHideSeen: 'maintenanceDisableSeenFood',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,iBAAiB;EAC7BC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,UAAU;EACtBC,UAAU,EAAE,iBAAiB;EAC7BC,SAAS,EAAE,UAAU;EACrBC,UAAU,EAAE,wBAAwB;EACpCC,gBAAgB,EAAE,iBAAiB;EACnCC,cAAc,EAAE,eAAe;EAC/BC,eAAe,EAAE,gBAAgB;EACjCC,wBAAwB,EAAE,0BAA0B;EACpDC,kBAAkB,EAAE,oBAAoB;EACxCC,qBAAqB,EAAE,wBAAwB;EAC/CC,iBAAiB,EAAE,iBAAiB;EACpCC,mBAAmB,EAAE,mBAAmB;EACxCC,oBAAoB,EAAE,oBAAoB;EAC1CC,mBAAmB,EAAE,mBAAmB;EACxCC,kBAAkB,EAAE,kBAAkB;EACtCC,gBAAgB,EAAE,2BAA2B;EAC7CC,6BAA6B,EAAE,yBAAyB;EACxDC,+BAA+B,EAAE,2BAA2B;EAC5DC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,eAAe;EACjCC,gBAAgB,EAAE,gBAAgB;EAClCC,iBAAiB,EAAE,eAAe;EAClCC,oBAAoB,EAAE,eAAe;EACrCC,cAAc,EAAE,YAAY;EAC5BC,WAAW,EAAE,iBAAiB;EAC9BC,kBAAkB,EAAE,uBAAuB;EAC3CC,iBAAiB,EAAE,iCAAiC;EACpDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,0BAA0B;EACjDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAASvC,MAAM","ignoreList":[]}
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestForms',
17
17
  screenJobTypePicker: 'jobTypePickerForms',
18
18
  screenRequestNotes: 'requestNotesForms',
19
+ screenUserPicker: 'maintenanceUserPickerForms',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingForms',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentForms',
21
22
  iconGridMenu: 'form',
@@ -1 +1 @@
1
- {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.forms.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceForms',\n aliases: ['maintenanceRequest'],\n reducerKey: 'maintenanceForms',\n serviceKey: 'maintenanceForms',\n updateKey: 'jobsForms',\n commentKey: 'maintenanceForms',\n actionJobsLoaded: 'JOBS_LOADEDForms',\n actionJobAdded: 'JOB_ADDEDForms',\n actionJobsAdded: 'JOBS_ADDEDForms',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDForms',\n actionJobsHideSeen: 'JOBS_HIDE_SEENForms',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDForms',\n screenMaintenance: 'maintenanceForms',\n screenRequestDetail: 'requestDetailForms',\n screenServiceRequest: 'serviceRequestForms',\n screenJobTypePicker: 'jobTypePickerForms',\n screenRequestNotes: 'requestNotesForms',\n permissionMaintenanceTracking: 'maintenanceTrackingForms',\n permissionMaintenanceAssignment: 'maintenanceAssignmentForms',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Forms',\n textAddMenuTitle: 'Form Submission',\n textMoreMenuTitle: 'Forms',\n textKioskActionTitle: 'Forms',\n textEntityName: 'Form',\n textJobType: 'Form',\n emptyRequestsStaff: 'No active Form Submissions',\n emptyRequestsUser: 'Your Form Submissions will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusForms',\n stringConfigHideSeen: 'maintenanceDisableSeenForms',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,kBAAkB;EAC9BC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,kBAAkB;EAC9BC,UAAU,EAAE,kBAAkB;EAC9BC,SAAS,EAAE,WAAW;EACtBC,UAAU,EAAE,kBAAkB;EAC9BC,gBAAgB,EAAE,kBAAkB;EACpCC,cAAc,EAAE,gBAAgB;EAChCC,eAAe,EAAE,iBAAiB;EAClCC,wBAAwB,EAAE,2BAA2B;EACrDC,kBAAkB,EAAE,qBAAqB;EACzCC,qBAAqB,EAAE,yBAAyB;EAChDC,iBAAiB,EAAE,kBAAkB;EACrCC,mBAAmB,EAAE,oBAAoB;EACzCC,oBAAoB,EAAE,qBAAqB;EAC3CC,mBAAmB,EAAE,oBAAoB;EACzCC,kBAAkB,EAAE,mBAAmB;EACvCC,6BAA6B,EAAE,0BAA0B;EACzDC,+BAA+B,EAAE,4BAA4B;EAC7DC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,OAAO;EACzBC,gBAAgB,EAAE,iBAAiB;EACnCC,iBAAiB,EAAE,OAAO;EAC1BC,oBAAoB,EAAE,OAAO;EAC7BC,cAAc,EAAE,MAAM;EACtBC,WAAW,EAAE,MAAM;EACnBC,kBAAkB,EAAE,4BAA4B;EAChDC,iBAAiB,EAAE,sCAAsC;EACzDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,2BAA2B;EAClDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAAStC,MAAM","ignoreList":[]}
1
+ {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","screenUserPicker","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.forms.js"],"sourcesContent":["const values = {\n featureKey: 'maintenanceForms',\n aliases: ['maintenanceRequest'],\n reducerKey: 'maintenanceForms',\n serviceKey: 'maintenanceForms',\n updateKey: 'jobsForms',\n commentKey: 'maintenanceForms',\n actionJobsLoaded: 'JOBS_LOADEDForms',\n actionJobAdded: 'JOB_ADDEDForms',\n actionJobsAdded: 'JOBS_ADDEDForms',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADEDForms',\n actionJobsHideSeen: 'JOBS_HIDE_SEENForms',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADEDForms',\n screenMaintenance: 'maintenanceForms',\n screenRequestDetail: 'requestDetailForms',\n screenServiceRequest: 'serviceRequestForms',\n screenJobTypePicker: 'jobTypePickerForms',\n screenRequestNotes: 'requestNotesForms',\n screenUserPicker: 'maintenanceUserPickerForms',\n permissionMaintenanceTracking: 'maintenanceTrackingForms',\n permissionMaintenanceAssignment: 'maintenanceAssignmentForms',\n iconGridMenu: 'form',\n gridViewBox: '0 0 256 256',\n iconAddMenu: 'form',\n iconKioskAction: 'form',\n hasMoreOption: false,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Forms',\n textAddMenuTitle: 'Form Submission',\n textMoreMenuTitle: 'Forms',\n textKioskActionTitle: 'Forms',\n textEntityName: 'Form',\n textJobType: 'Form',\n emptyRequestsStaff: 'No active Form Submissions',\n emptyRequestsUser: 'Your Form Submissions will show here',\n forceCustomFields: true,\n stringConfigJobStatus: 'maintenanceJobStatusForms',\n stringConfigHideSeen: 'maintenanceDisableSeenForms',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,kBAAkB;EAC9BC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,kBAAkB;EAC9BC,UAAU,EAAE,kBAAkB;EAC9BC,SAAS,EAAE,WAAW;EACtBC,UAAU,EAAE,kBAAkB;EAC9BC,gBAAgB,EAAE,kBAAkB;EACpCC,cAAc,EAAE,gBAAgB;EAChCC,eAAe,EAAE,iBAAiB;EAClCC,wBAAwB,EAAE,2BAA2B;EACrDC,kBAAkB,EAAE,qBAAqB;EACzCC,qBAAqB,EAAE,yBAAyB;EAChDC,iBAAiB,EAAE,kBAAkB;EACrCC,mBAAmB,EAAE,oBAAoB;EACzCC,oBAAoB,EAAE,qBAAqB;EAC3CC,mBAAmB,EAAE,oBAAoB;EACzCC,kBAAkB,EAAE,mBAAmB;EACvCC,gBAAgB,EAAE,4BAA4B;EAC9CC,6BAA6B,EAAE,0BAA0B;EACzDC,+BAA+B,EAAE,4BAA4B;EAC7DC,YAAY,EAAE,MAAM;EACpBC,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAE,MAAM;EACnBC,eAAe,EAAE,MAAM;EACvBC,aAAa,EAAE,KAAK;EACpBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,OAAO;EACzBC,gBAAgB,EAAE,iBAAiB;EACnCC,iBAAiB,EAAE,OAAO;EAC1BC,oBAAoB,EAAE,OAAO;EAC7BC,cAAc,EAAE,MAAM;EACtBC,WAAW,EAAE,MAAM;EACnBC,kBAAkB,EAAE,4BAA4B;EAChDC,iBAAiB,EAAE,sCAAsC;EACzDC,iBAAiB,EAAE,IAAI;EACvBC,qBAAqB,EAAE,2BAA2B;EAClDC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAASvC,MAAM","ignoreList":[]}
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequest',
17
17
  screenJobTypePicker: 'jobTypePicker',
18
18
  screenRequestNotes: 'requestNotes',
19
+ screenUserPicker: 'maintenanceUserPicker',
19
20
  permissionMaintenanceTracking: 'maintenanceTracking',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignment',
21
22
  iconGridMenu: 'maintenance',
@@ -1 +1 @@
1
- {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.js"],"sourcesContent":["const values = {\n featureKey: 'maintenance',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobs',\n serviceKey: 'maintenance',\n updateKey: 'jobs',\n commentKey: 'maintenancerequest',\n actionJobsLoaded: 'JOBS_LOADED',\n actionJobAdded: 'JOB_ADDED',\n actionJobsAdded: 'JOBS_ADDED',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADED',\n actionJobsHideSeen: 'JOBS_HIDE_SEEN',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADED',\n screenMaintenance: 'maintenance',\n screenRequestDetail: 'requestDetail',\n screenServiceRequest: 'serviceRequest',\n screenJobTypePicker: 'jobTypePicker',\n screenRequestNotes: 'requestNotes',\n permissionMaintenanceTracking: 'maintenanceTracking',\n permissionMaintenanceAssignment: 'maintenanceAssignment',\n iconGridMenu: 'maintenance',\n gridViewBox: '0 0 30 30',\n iconAddMenu: 'request',\n iconKioskAction: 'wrench',\n hasMoreOption: true,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Request',\n textAddMenuTitle: 'Request',\n textMoreMenuTitle: 'Request',\n textKioskActionTitle: 'Request',\n textEntityName: 'Job',\n textJobType: 'Request Type',\n emptyRequestsStaff: 'No active Requests',\n emptyRequestsUser: 'Your Requests will show here',\n forceCustomFields: false,\n stringConfigJobStatus: 'maintenanceJobStatus',\n stringConfigHideSeen: 'maintenanceDisableSeen',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,aAAa;EACzBC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,MAAM;EAClBC,UAAU,EAAE,aAAa;EACzBC,SAAS,EAAE,MAAM;EACjBC,UAAU,EAAE,oBAAoB;EAChCC,gBAAgB,EAAE,aAAa;EAC/BC,cAAc,EAAE,WAAW;EAC3BC,eAAe,EAAE,YAAY;EAC7BC,wBAAwB,EAAE,sBAAsB;EAChDC,kBAAkB,EAAE,gBAAgB;EACpCC,qBAAqB,EAAE,oBAAoB;EAC3CC,iBAAiB,EAAE,aAAa;EAChCC,mBAAmB,EAAE,eAAe;EACpCC,oBAAoB,EAAE,gBAAgB;EACtCC,mBAAmB,EAAE,eAAe;EACpCC,kBAAkB,EAAE,cAAc;EAClCC,6BAA6B,EAAE,qBAAqB;EACpDC,+BAA+B,EAAE,uBAAuB;EACxDC,YAAY,EAAE,aAAa;EAC3BC,WAAW,EAAE,WAAW;EACxBC,WAAW,EAAE,SAAS;EACtBC,eAAe,EAAE,QAAQ;EACzBC,aAAa,EAAE,IAAI;EACnBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,SAAS;EAC3BC,gBAAgB,EAAE,SAAS;EAC3BC,iBAAiB,EAAE,SAAS;EAC5BC,oBAAoB,EAAE,SAAS;EAC/BC,cAAc,EAAE,KAAK;EACrBC,WAAW,EAAE,cAAc;EAC3BC,kBAAkB,EAAE,oBAAoB;EACxCC,iBAAiB,EAAE,8BAA8B;EACjDC,iBAAiB,EAAE,KAAK;EACxBC,qBAAqB,EAAE,sBAAsB;EAC7CC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAAStC,MAAM","ignoreList":[]}
1
+ {"version":3,"names":["values","featureKey","aliases","reducerKey","serviceKey","updateKey","commentKey","actionJobsLoaded","actionJobAdded","actionJobsAdded","actionJobsStatusesLoaded","actionJobsHideSeen","actionJobFilterLoaded","screenMaintenance","screenRequestDetail","screenServiceRequest","screenJobTypePicker","screenRequestNotes","screenUserPicker","permissionMaintenanceTracking","permissionMaintenanceAssignment","iconGridMenu","gridViewBox","iconAddMenu","iconKioskAction","hasMoreOption","orderAddMenu","orderMoreMenu","orderKioskAction","textFeatureTitle","textAddMenuTitle","textMoreMenuTitle","textKioskActionTitle","textEntityName","textJobType","emptyRequestsStaff","emptyRequestsUser","forceCustomFields","stringConfigJobStatus","stringConfigHideSeen"],"sources":["values.config.js"],"sourcesContent":["const values = {\n featureKey: 'maintenance',\n aliases: ['maintenanceRequest'],\n reducerKey: 'jobs',\n serviceKey: 'maintenance',\n updateKey: 'jobs',\n commentKey: 'maintenancerequest',\n actionJobsLoaded: 'JOBS_LOADED',\n actionJobAdded: 'JOB_ADDED',\n actionJobsAdded: 'JOBS_ADDED',\n actionJobsStatusesLoaded: 'JOBS_STATUSES_LOADED',\n actionJobsHideSeen: 'JOBS_HIDE_SEEN',\n actionJobFilterLoaded: 'JOBS_FILTER_LOADED',\n screenMaintenance: 'maintenance',\n screenRequestDetail: 'requestDetail',\n screenServiceRequest: 'serviceRequest',\n screenJobTypePicker: 'jobTypePicker',\n screenRequestNotes: 'requestNotes',\n screenUserPicker: 'maintenanceUserPicker',\n permissionMaintenanceTracking: 'maintenanceTracking',\n permissionMaintenanceAssignment: 'maintenanceAssignment',\n iconGridMenu: 'maintenance',\n gridViewBox: '0 0 30 30',\n iconAddMenu: 'request',\n iconKioskAction: 'wrench',\n hasMoreOption: true,\n orderAddMenu: 5,\n orderMoreMenu: 4,\n orderKioskAction: 1,\n textFeatureTitle: 'Request',\n textAddMenuTitle: 'Request',\n textMoreMenuTitle: 'Request',\n textKioskActionTitle: 'Request',\n textEntityName: 'Job',\n textJobType: 'Request Type',\n emptyRequestsStaff: 'No active Requests',\n emptyRequestsUser: 'Your Requests will show here',\n forceCustomFields: false,\n stringConfigJobStatus: 'maintenanceJobStatus',\n stringConfigHideSeen: 'maintenanceDisableSeen',\n};\n\nexport { values };\n"],"mappings":"AAAA,MAAMA,MAAM,GAAG;EACbC,UAAU,EAAE,aAAa;EACzBC,OAAO,EAAE,CAAC,oBAAoB,CAAC;EAC/BC,UAAU,EAAE,MAAM;EAClBC,UAAU,EAAE,aAAa;EACzBC,SAAS,EAAE,MAAM;EACjBC,UAAU,EAAE,oBAAoB;EAChCC,gBAAgB,EAAE,aAAa;EAC/BC,cAAc,EAAE,WAAW;EAC3BC,eAAe,EAAE,YAAY;EAC7BC,wBAAwB,EAAE,sBAAsB;EAChDC,kBAAkB,EAAE,gBAAgB;EACpCC,qBAAqB,EAAE,oBAAoB;EAC3CC,iBAAiB,EAAE,aAAa;EAChCC,mBAAmB,EAAE,eAAe;EACpCC,oBAAoB,EAAE,gBAAgB;EACtCC,mBAAmB,EAAE,eAAe;EACpCC,kBAAkB,EAAE,cAAc;EAClCC,gBAAgB,EAAE,uBAAuB;EACzCC,6BAA6B,EAAE,qBAAqB;EACpDC,+BAA+B,EAAE,uBAAuB;EACxDC,YAAY,EAAE,aAAa;EAC3BC,WAAW,EAAE,WAAW;EACxBC,WAAW,EAAE,SAAS;EACtBC,eAAe,EAAE,QAAQ;EACzBC,aAAa,EAAE,IAAI;EACnBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,gBAAgB,EAAE,SAAS;EAC3BC,gBAAgB,EAAE,SAAS;EAC3BC,iBAAiB,EAAE,SAAS;EAC5BC,oBAAoB,EAAE,SAAS;EAC/BC,cAAc,EAAE,KAAK;EACrBC,WAAW,EAAE,cAAc;EAC3BC,kBAAkB,EAAE,oBAAoB;EACxCC,iBAAiB,EAAE,8BAA8B;EACjDC,iBAAiB,EAAE,KAAK;EACxBC,qBAAqB,EAAE,sBAAsB;EAC7CC,oBAAoB,EAAE;AACxB,CAAC;AAED,SAASvC,MAAM","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-maintenance-app",
3
- "version": "7.0.2-auth.0",
3
+ "version": "7.0.18",
4
4
  "description": "Extension package to enable maintenance on Pluss Communities Platform",
5
5
  "main": "dist/module/index.js",
6
6
  "module": "dist/module/index.js",
@@ -15,9 +15,6 @@
15
15
  "patch": "npm version patch",
16
16
  "betaupload": "npm run build && npm publish --access public --tag beta",
17
17
  "betaupload:p": "npm run betapatch && npm run betaupload",
18
- "authpatch": "npm version prepatch --preid=auth",
19
- "authupload": "npm run build && npm publish --access public --tag auth",
20
- "authupload:p": "npm run authpatch && npm run authupload",
21
18
  "upload": "npm run build && npm publish --access public",
22
19
  "upload:p": "npm run patch && npm run upload",
23
20
  "copy:add": "run(){ ext=${1:-default}; test -f src/values.config.$ext.js || cp src/values.config.default.js src/values.config.$ext.js; }; run",
@@ -25,14 +22,13 @@
25
22
  "copy:set": "run(){ target='\\@plusscommunities\\/pluss-maintenance-app'; ext=${1:-default}; [ $ext == 'default' ] && replace=$target || replace=$target'-'$ext; echo 'Setting target to '$replace; test -f src/values.config.$ext.js && cp -f src/values.config.$ext.js src/values.config.js; sed -i '' -e 's/'$target'.*\"/'$replace'\"/g' package.json; }; run",
26
23
  "copy:uploadnopatch": "for file in `ls ./src/values.config.*.js`; do dup=`echo $file | sed 's/.*values\\.config\\.\\(.*\\)\\.js/\\1/'`; npm run copy:set $dup; npm run upload; done; npm run copy:set;",
27
24
  "copy:upload": "npm run patch; npm run copy:uploadnopatch;",
28
- "copy:betaupload": "npm run betapatch; for file in `ls ./src/values.config.*.js`; do dup=`echo $file | sed 's/.*values\\.config\\.\\(.*\\)\\.js/\\1/'`; npm run copy:set $dup; npm run betaupload; done; npm run copy:set;",
29
- "copy:authupload": "npm run authpatch; for file in `ls ./src/values.config.*.js`; do dup=`echo $file | sed 's/.*values\\.config\\.\\(.*\\)\\.js/\\1/'`; npm run copy:set $dup; npm run authupload; done; npm run copy:set;"
25
+ "copy:betaupload": "npm run betapatch; for file in `ls ./src/values.config.*.js`; do dup=`echo $file | sed 's/.*values\\.config\\.\\(.*\\)\\.js/\\1/'`; npm run copy:set $dup; npm run betaupload; done; npm run copy:set;"
30
26
  },
31
27
  "author": "Thorbjorn Kappel Davis",
32
28
  "license": "ISC",
33
29
  "dependencies": {},
34
30
  "peerDependencies": {
35
- "@plusscommunities/pluss-core-app": "^7.0.3-auth.0",
31
+ "@plusscommunities/pluss-core-app": "^7.1.13",
36
32
  "axios": "^1.6.8",
37
33
  "lodash": "^4.17.4",
38
34
  "moment": "^2.30.1",
package/src/apis/index.js CHANGED
@@ -3,3 +3,4 @@ import { Apis } from '../core.config';
3
3
  export const stringActions = Apis.stringActions;
4
4
 
5
5
  export * from './maintenanceActions';
6
+ export * from './userActions';
@@ -0,0 +1,21 @@
1
+ import { Helper, Session } from '../core.config';
2
+
3
+ export const userActions = {
4
+ getSiteUsers: async site => {
5
+ return Session.authedFunction({
6
+ method: 'GET',
7
+ url: Helper.getUrl('users', 'users/site', { site, compact: true }),
8
+ });
9
+ },
10
+
11
+ fetchUser: async (site, userId) => {
12
+ return Session.authedFunction({
13
+ method: 'POST',
14
+ url: Helper.getUrl('users', 'getsingle'),
15
+ data: {
16
+ site,
17
+ userId,
18
+ },
19
+ });
20
+ },
21
+ };
package/src/index.js CHANGED
@@ -3,6 +3,7 @@ import RequestDetail from './screens/RequestDetail';
3
3
  import ServiceRequest from './screens/ServiceRequest';
4
4
  import JobTypePicker from './screens/JobTypePicker';
5
5
  import RequestNotes from './screens/RequestNotes';
6
+ import MaintenanceUserPicker from './screens/MaintenanceUserPicker';
6
7
  import JobsReducer from './reducers/JobsReducer';
7
8
  import { values } from './values.config';
8
9
 
@@ -18,6 +19,7 @@ export const Screens = (() => {
18
19
  screens[values.screenServiceRequest] = ServiceRequest;
19
20
  screens[values.screenJobTypePicker] = JobTypePicker;
20
21
  screens[values.screenRequestNotes] = RequestNotes;
22
+ screens[values.screenUserPicker] = MaintenanceUserPicker;
21
23
  return screens;
22
24
  })();
23
25
  export { default as Config } from './feature.config';
@@ -0,0 +1,107 @@
1
+ import React, { Component } from 'react';
2
+ import _ from 'lodash';
3
+ import { TouchableOpacity, View, ScrollView, Text } from 'react-native';
4
+ import { connect } from 'react-redux';
5
+ import { Icon } from 'react-native-elements';
6
+ import { Services } from '../feature.config';
7
+ import { Components, Colours } from '../core.config';
8
+
9
+ class MaintenanceUserPicker extends Component {
10
+ state = {
11
+ currentUser: null,
12
+ };
13
+
14
+ UNSAFE_componentWillMount() {
15
+ this.setState({ currentUser: this.props.currentUser });
16
+ }
17
+
18
+ onPressBack() {
19
+ Services.navigation.goBack();
20
+ }
21
+
22
+ onUserPress(user) {
23
+ this.props.onSelectUser(user);
24
+ this.setState({ currentUser: user });
25
+ setTimeout(() => {
26
+ this.onPressBack();
27
+ }, 200);
28
+ }
29
+
30
+ renderMain() {
31
+ if (_.isEmpty(this.props.users)) {
32
+ return (
33
+ <View style={{ marginTop: 16 }}>
34
+ <Components.Spinner />
35
+ </View>
36
+ );
37
+ }
38
+
39
+ return <Components.FormCard style={{ marginTop: 16 }}>{this.renderOptions()}</Components.FormCard>;
40
+ }
41
+
42
+ renderOptions() {
43
+ return this.props.users.map((user, index) => {
44
+ return (
45
+ <TouchableOpacity key={index} onPress={this.onUserPress.bind(this, user)}>
46
+ <Components.FormCardSection label={user.displayName} labelStyle={{ height: 0, margin: 0 }} hasUnderline hasContent>
47
+ <View style={styles.rowContainer}>
48
+ <View style={styles.userContainer}>
49
+ <Components.ProfilePic ProfilePic={user.profilePic} Diameter={30} />
50
+ <Text style={styles.labelText}>{user.displayName}</Text>
51
+ </View>
52
+ <Icon
53
+ name="check-circle"
54
+ type="font-awesome"
55
+ iconStyle={[{ color: '#d5d9e0', fontSize: 20 }, _.isEqual(user, this.state.currentUser) && { color: Colours.COLOUR_GREEN }]}
56
+ />
57
+ </View>
58
+ </Components.FormCardSection>
59
+ </TouchableOpacity>
60
+ );
61
+ });
62
+ }
63
+
64
+ render() {
65
+ return (
66
+ <View style={styles.container}>
67
+ <Components.Header leftIcon="angle-left" onPressLeft={this.onPressBack.bind(this)} text="Select user" />
68
+ <ScrollView style={{ flex: 1 }}>{this.renderMain()}</ScrollView>
69
+ </View>
70
+ );
71
+ }
72
+ }
73
+
74
+ const styles = {
75
+ container: {
76
+ flex: 1,
77
+ position: 'relative',
78
+ backgroundColor: '#f0f0f5',
79
+ },
80
+ row: {
81
+ flexDirection: 'row',
82
+ alignItems: 'center',
83
+ minHeight: 22,
84
+ },
85
+ text: {
86
+ flex: 1,
87
+ fontFamily: 'sf-regular',
88
+ fontSize: 14,
89
+ color: Colours.TEXT_DARK,
90
+ },
91
+ rowContainer: {
92
+ flexDirection: 'row',
93
+ justifyContent: 'space-between',
94
+ },
95
+ userContainer: {
96
+ flexDirection: 'row',
97
+ alignItems: 'center',
98
+ },
99
+ labelText: {
100
+ fontFamily: 'sf-medium',
101
+ fontSize: 16,
102
+ color: Colours.TEXT_DARK,
103
+ marginLeft: 8,
104
+ },
105
+ };
106
+
107
+ export default connect(null, {})(MaintenanceUserPicker);
@@ -18,7 +18,7 @@ import _ from 'lodash';
18
18
  import moment from 'moment';
19
19
  import { connect } from 'react-redux';
20
20
  import { jobAdded } from '../actions';
21
- import { maintenanceActions } from '../apis';
21
+ import { maintenanceActions, userActions } from '../apis';
22
22
  import { Services } from '../feature.config';
23
23
  import { Components, Colours, Helper, Config } from '../core.config';
24
24
  import { values } from '../values.config';
@@ -67,6 +67,11 @@ class MaintenanceRequest extends Component {
67
67
  popUpType: 'date',
68
68
  dateFieldId: null,
69
69
  imageFieldId: null,
70
+
71
+ // PC-1255: On-behalf request fields
72
+ canCreateOnBehalf: false,
73
+ selectedUser: null,
74
+ users: [],
70
75
  };
71
76
  this.checkThumb = null;
72
77
  this.keyboardTypes = {
@@ -77,15 +82,52 @@ class MaintenanceRequest extends Component {
77
82
  }
78
83
 
79
84
  componentDidMount() {
85
+ this.checkUserPermissions();
86
+ this.getJobTypes();
87
+ }
88
+
89
+ checkUserPermissions = async () => {
90
+ // PC-1255: Check if user has userManagement permission
91
+ const hasUserManagement = this.props.permissions?.includes('userManagement') || false;
92
+
93
+ if (hasUserManagement) {
94
+ this.setState({ canCreateOnBehalf: true });
95
+ // Load site users for picker
96
+ await this.loadSiteUsers();
97
+ } else {
98
+ // Default to logged-in user for non-staff or staff without permission
99
+ this.setDefaultUser();
100
+ }
101
+ };
102
+
103
+ loadSiteUsers = async () => {
104
+ try {
105
+ const response = await userActions.getSiteUsers(this.props.site);
106
+ // PC-1255: Load all users (not just residents) to match web admin behavior
107
+ const users = _.sortBy(response.data.Items || [], u => (u.displayName || '').toLowerCase());
108
+ this.setState({ users });
109
+ } catch (error) {
110
+ console.log('Error loading site users:', error);
111
+ // Fall back to default user if loading fails
112
+ this.setDefaultUser();
113
+ }
114
+ };
115
+
116
+ setDefaultUser = () => {
80
117
  if (this.props.userType !== 'KIOSK') {
118
+ const defaultUser = {
119
+ userId: this.props.uid,
120
+ displayName: this.props.displayName,
121
+ profilePic: this.props.profilePic,
122
+ };
81
123
  this.setState({
124
+ selectedUser: defaultUser,
82
125
  userName: this.props.displayName,
83
126
  roomNumber: this.props.unit,
84
127
  phone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : '',
85
128
  });
86
129
  }
87
- this.getJobTypes();
88
- }
130
+ };
89
131
 
90
132
  componentWillUnmount() {
91
133
  clearInterval(this.checkThumb);
@@ -99,6 +141,48 @@ class MaintenanceRequest extends Component {
99
141
  this.setState(update);
100
142
  };
101
143
 
144
+ // PC-1255: Handle user picker navigation
145
+ onPressUser = () => {
146
+ const { users, selectedUser } = this.state;
147
+ if (!users || users.length === 0) return;
148
+
149
+ Services.navigation.navigate(values.screenUserPicker, {
150
+ currentUser: selectedUser,
151
+ users,
152
+ onSelectUser: this.onSelectUser.bind(this),
153
+ });
154
+ };
155
+
156
+ // PC-1255: Handle user selection and auto-populate contact details
157
+ onSelectUser = async user => {
158
+ const update = {
159
+ selectedUser: user,
160
+ userName: user.displayName,
161
+ };
162
+
163
+ // PC-1255: Try to fetch full user details for auto-population
164
+ try {
165
+ // getSiteUsers returns 'Id', but fetchUser expects 'userId'
166
+ const userId = user.userId || user.Id;
167
+ const response = await userActions.fetchUser(this.props.site, userId);
168
+ if (response.data && response.data.user) {
169
+ const userDetails = response.data.user;
170
+ if (userDetails.phoneNumber) {
171
+ update.phone = userDetails.phoneNumber;
172
+ }
173
+ if (userDetails.unit) {
174
+ update.roomNumber = userDetails.unit;
175
+ }
176
+ }
177
+ } catch (error) {
178
+ // Permission denied (403) or other error - continue without auto-population
179
+ // User can still manually enter contact details
180
+ console.log('Could not fetch user details for auto-population:', error);
181
+ }
182
+
183
+ this.setState(update);
184
+ };
185
+
102
186
  onChangeAnswer = (fieldId, answer) => {
103
187
  const update = { customFields: _.cloneDeep(this.state.customFields) };
104
188
  const field = update.customFields[fieldId];
@@ -513,6 +597,14 @@ class MaintenanceRequest extends Component {
513
597
  if (uploadingImage) return;
514
598
 
515
599
  this.setState({ error: null, showError: false });
600
+
601
+ // PC-1255: Validate user selection for on-behalf requests
602
+ if (this.state.canCreateOnBehalf && !this.state.selectedUser) {
603
+ console.log('submitRequest - no user selected for on-behalf request');
604
+ this.setState({ showError: true });
605
+ return;
606
+ }
607
+
516
608
  if (title.length === 0 || !roomNumber || roomNumber.length === 0) {
517
609
  console.log('submitRequest - error', { title, roomNumber });
518
610
  this.setState({ showError: true });
@@ -977,20 +1069,50 @@ class MaintenanceRequest extends Component {
977
1069
  <Components.LoadingIndicator visible={this.state.submitting} />
978
1070
  {this.state.error && <Text style={styles.errorText}>{this.state.error}</Text>}
979
1071
  <Components.FormCard style={{ marginTop: 16 }}>
980
- <Components.FormCardSection
981
- label={'Name'}
982
- placeholder={'Enter your name'}
983
- textValue={this.state.userName}
984
- onChangeText={userName => this.onChangeName(userName)}
985
- editable={this.props.userType === 'KIOSK' && this.state.submitting === false}
986
- isValid={() => {
987
- return this.state.userName.length > 1;
988
- }}
989
- required
990
- errorText="Please enter your name."
991
- showError={this.state.showError && this.state.userName.length < 2}
992
- hasUnderline
993
- />
1072
+ {/* PC-1255: User picker for on-behalf requests */}
1073
+ {this.state.canCreateOnBehalf && (
1074
+ <Components.FormCardSection
1075
+ label={'Select User'}
1076
+ textValue={this.state.selectedUser?.displayName}
1077
+ hasContent
1078
+ hasUnderline
1079
+ required
1080
+ errorText="Please select a user."
1081
+ showError={this.state.showError && !this.state.selectedUser}
1082
+ sectionStyle={{ borderBottomWidth: 1, borderBottomColor: Colours.LINEGREY }}
1083
+ >
1084
+ <TouchableOpacity onPress={this.onPressUser}>
1085
+ <View style={styles.userPickerContainer}>
1086
+ <View style={styles.profileContainer}>
1087
+ <Components.ProfilePic ProfilePic={this.state.selectedUser?.profilePic} Diameter={30} />
1088
+ <Text style={styles.nameText}>{this.state.selectedUser?.displayName || 'Select User'}</Text>
1089
+ </View>
1090
+ <Icon
1091
+ name="angle-right"
1092
+ type="font-awesome"
1093
+ iconStyle={[styles.sectionTitle, { fontSize: 20, color: this.props.colourBrandingMain }]}
1094
+ />
1095
+ </View>
1096
+ </TouchableOpacity>
1097
+ </Components.FormCardSection>
1098
+ )}
1099
+ {/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}
1100
+ {!this.state.canCreateOnBehalf && (
1101
+ <Components.FormCardSection
1102
+ label={'Name'}
1103
+ placeholder={'Enter your name'}
1104
+ textValue={this.state.userName}
1105
+ onChangeText={userName => this.onChangeName(userName)}
1106
+ editable={this.props.userType === 'KIOSK' && this.state.submitting === false}
1107
+ isValid={() => {
1108
+ return this.state.userName.length > 1;
1109
+ }}
1110
+ required
1111
+ errorText="Please enter your name."
1112
+ showError={this.state.showError && this.state.userName.length < 2}
1113
+ hasUnderline
1114
+ />
1115
+ )}
994
1116
  <Components.FormCardSection
995
1117
  label={'Contact number'}
996
1118
  placeholder={'Enter phone number'}
@@ -1394,11 +1516,27 @@ const styles = {
1394
1516
  removeDocumentIcon: {
1395
1517
  fontSize: 24,
1396
1518
  },
1519
+ // PC-1255: User picker styles
1520
+ userPickerContainer: {
1521
+ flexDirection: 'row',
1522
+ justifyContent: 'space-between',
1523
+ alignItems: 'center',
1524
+ },
1525
+ profileContainer: {
1526
+ flexDirection: 'row',
1527
+ alignItems: 'center',
1528
+ },
1529
+ nameText: {
1530
+ fontFamily: 'sf-medium',
1531
+ fontSize: 16,
1532
+ color: Colours.TEXT_DARK,
1533
+ marginLeft: 8,
1534
+ },
1397
1535
  };
1398
1536
 
1399
1537
  const mapStateToProps = state => {
1400
1538
  const { user, connection } = state;
1401
- const { displayName, profilePic, uid, site, unit, phoneNumber } = user;
1539
+ const { displayName, profilePic, uid, site, unit, phoneNumber, permissions } = user;
1402
1540
  return {
1403
1541
  connected: connection.connected,
1404
1542
  userType: user.type,
@@ -1408,6 +1546,7 @@ const mapStateToProps = state => {
1408
1546
  site,
1409
1547
  unit,
1410
1548
  phoneNumber,
1549
+ permissions,
1411
1550
  colourBrandingMain: Colours.getMainBrandingColourFromState(state),
1412
1551
  strings: state.strings?.config || {},
1413
1552
  };
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestA',
17
17
  screenJobTypePicker: 'jobTypePickerA',
18
18
  screenRequestNotes: 'requestNotesA',
19
+ screenUserPicker: 'maintenanceUserPickerA',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingA',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentA',
21
22
  iconGridMenu: 'maintenance',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequest',
17
17
  screenJobTypePicker: 'jobTypePicker',
18
18
  screenRequestNotes: 'requestNotes',
19
+ screenUserPicker: 'maintenanceUserPicker',
19
20
  permissionMaintenanceTracking: 'maintenanceTracking',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignment',
21
22
  iconGridMenu: 'maintenance',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestEnquiry',
17
17
  screenJobTypePicker: 'jobTypePickerEnquiry',
18
18
  screenRequestNotes: 'requestNotesEnquiry',
19
+ screenUserPicker: 'maintenanceUserPickerEnquiry',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingEnquiry',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentEnquiry',
21
22
  iconGridMenu: 'form',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestFeedback',
17
17
  screenJobTypePicker: 'jobTypePickerFeedback',
18
18
  screenRequestNotes: 'requestNotesFeedback',
19
+ screenUserPicker: 'maintenanceUserPickerFeedback',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingFeedback',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentFeedback',
21
22
  iconGridMenu: 'form',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestFood',
17
17
  screenJobTypePicker: 'jobTypePickerFood',
18
18
  screenRequestNotes: 'requestNotesFood',
19
+ screenUserPicker: 'maintenanceUserPickerFood',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingFood',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentFood',
21
22
  iconGridMenu: 'form',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequestForms',
17
17
  screenJobTypePicker: 'jobTypePickerForms',
18
18
  screenRequestNotes: 'requestNotesForms',
19
+ screenUserPicker: 'maintenanceUserPickerForms',
19
20
  permissionMaintenanceTracking: 'maintenanceTrackingForms',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignmentForms',
21
22
  iconGridMenu: 'form',
@@ -16,6 +16,7 @@ const values = {
16
16
  screenServiceRequest: 'serviceRequest',
17
17
  screenJobTypePicker: 'jobTypePicker',
18
18
  screenRequestNotes: 'requestNotes',
19
+ screenUserPicker: 'maintenanceUserPicker',
19
20
  permissionMaintenanceTracking: 'maintenanceTracking',
20
21
  permissionMaintenanceAssignment: 'maintenanceAssignment',
21
22
  iconGridMenu: 'maintenance',