@itilite/iui-user-management 0.1.1 → 0.1.3

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 { IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIDivider, IUIGrid, IUITypography, IUIRadio, IUIButton, IUIModal, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUIIconButton, IUICard, IUIBackdrop, IUICircularProgress, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUIDropdownButton } from '@itilite/iuistyles';
1
+ import { IUITypography, IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIDivider, IUIGrid, IUIRadio, IUIButton, IUIModal, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUIIconButton, IUICard, IUIBackdrop, IUICircularProgress, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUIDropdownButton } from '@itilite/iuistyles';
2
2
  import React, { useState, useEffect, Fragment as Fragment$1 } from 'react';
3
3
  import { configs, services, utilUrls } from '@itilite/utils';
4
4
  import moment from 'moment';
@@ -188,7 +188,7 @@ function toVal(mix) {
188
188
  return str;
189
189
  }
190
190
 
191
- function clsx () {
191
+ function clsx() {
192
192
  var i = 0,
193
193
  tmp,
194
194
  x,
@@ -311,7 +311,9 @@ var userPanelUrl = {
311
311
  var api = configs.api;
312
312
  var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref) {
313
313
  var page = _ref.page,
314
- tabelName = _ref.tabelName;
314
+ tabelName = _ref.tabelName,
315
+ placeholder = _ref.placeholder,
316
+ selectCTA = _ref.selectCTA;
315
317
 
316
318
  try {
317
319
  return Promise.resolve(_catch(function () {
@@ -330,12 +332,21 @@ var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref)
330
332
  mappedValue.unshift(NAoptionConfig.option);
331
333
  }
332
334
 
335
+ if (response.next === null && selectCTA) {
336
+ mappedValue.push({
337
+ value: selectCTA.value,
338
+ label: ''
339
+ });
340
+ }
341
+
333
342
  return {
334
343
  options: mappedValue,
335
344
  hasMore: !!response.next,
336
345
  additional: {
337
346
  page: page + 1,
338
- tabelName: tabelName
347
+ tabelName: tabelName,
348
+ placeholder: placeholder,
349
+ selectCTA: selectCTA
339
350
  }
340
351
  };
341
352
  });
@@ -345,7 +356,9 @@ var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref)
345
356
  hasMore: false,
346
357
  additional: {
347
358
  page: 1,
348
- tabelName: tabelName
359
+ tabelName: tabelName,
360
+ placeholder: placeholder,
361
+ selectCTA: selectCTA
349
362
  }
350
363
  };
351
364
  }));
@@ -597,7 +610,21 @@ var personalInfo = [{
597
610
  disableText: 'Please get in touch with your administrator to change this value.'
598
611
  }, {
599
612
  id: 8,
600
- empty: true
613
+ label: 'Profile photo',
614
+ description: 'This will be displayed on your profile',
615
+ name: 'profile_pic',
616
+ required: false,
617
+ multiple: false,
618
+ fileType: 'image/png,image/jpeg,image/jpg,image/webp',
619
+ fileSize: 5,
620
+ title: 'Select Profile',
621
+ type: 'file',
622
+ fullWidth: true,
623
+ visibility: true,
624
+ readOnly: false,
625
+ maxNoFiles: 2,
626
+ buttonType: 'profile',
627
+ disableText: 'Disable text here.'
601
628
  }];
602
629
  var workInfo = [{
603
630
  id: 1,
@@ -614,7 +641,14 @@ var workInfo = [{
614
641
  loadOption: commonLoadOptions,
615
642
  tabelName: 'employee_level',
616
643
  tooltip: 'This information will be used in creation of policies and approval rules',
617
- disableText: 'Please get in touch with your administrator to change this value.'
644
+ disableText: 'Please get in touch with your administrator to change this value.',
645
+ selectCTA: {
646
+ value: 'employee_level',
647
+ component: /*#__PURE__*/React.createElement(IUITypography, {
648
+ className: "iui__font--color-link iui__font--weight-500"
649
+ }, "+ Add Employee Level"),
650
+ callback: null
651
+ }
618
652
  }, {
619
653
  id: 2,
620
654
  label: 'Employee ID',
@@ -649,7 +683,14 @@ var workInfo = [{
649
683
  loadOption: commonLoadOptions,
650
684
  tabelName: 'entity',
651
685
  tooltip: 'This information will be used in creation of policies and approval rules',
652
- disableText: 'Please get in touch with your administrator to change this value.'
686
+ disableText: 'Please get in touch with your administrator to change this value.',
687
+ selectCTA: {
688
+ value: 'entity',
689
+ component: /*#__PURE__*/React.createElement(IUITypography, {
690
+ className: "iui__font--color-link iui__font--weight-500"
691
+ }, "+ Add Entity"),
692
+ callback: null
693
+ }
653
694
  }, {
654
695
  id: 4,
655
696
  label: 'Business unit',
@@ -664,7 +705,14 @@ var workInfo = [{
664
705
  placeholder: 'Select unit',
665
706
  tabelName: 'business_unit',
666
707
  loadOption: commonLoadOptions,
667
- disableText: 'Please get in touch with your administrator to change this value.'
708
+ disableText: 'Please get in touch with your administrator to change this value.',
709
+ selectCTA: {
710
+ value: 'business_unit',
711
+ component: /*#__PURE__*/React.createElement(IUITypography, {
712
+ className: "iui__font--color-link iui__font--weight-500"
713
+ }, "+ Add Business Unit"),
714
+ callback: null
715
+ }
668
716
  }, {
669
717
  id: 5,
670
718
  label: 'Department',
@@ -679,7 +727,14 @@ var workInfo = [{
679
727
  placeholder: 'Select department',
680
728
  tabelName: 'department',
681
729
  loadOption: commonLoadOptions,
682
- disableText: 'Please get in touch with your administrator to change this value.'
730
+ disableText: 'Please get in touch with your administrator to change this value.',
731
+ selectCTA: {
732
+ value: 'department',
733
+ component: /*#__PURE__*/React.createElement(IUITypography, {
734
+ className: "iui__font--color-link iui__font--weight-500"
735
+ }, "+ Add Department"),
736
+ callback: null
737
+ }
683
738
  }, {
684
739
  id: 6,
685
740
  label: 'Designation',
@@ -1228,7 +1283,8 @@ function GetInputType(_ref) {
1228
1283
  readOnly: _p.readOnly,
1229
1284
  hasInfoIcon: !!_p.tooltip,
1230
1285
  tooltipText: _p.tooltip,
1231
- disableText: _p.disableText
1286
+ disableText: _p.disableText,
1287
+ buttonType: _p.buttonType
1232
1288
  }));
1233
1289
 
1234
1290
  case 'async_select':
@@ -1239,7 +1295,8 @@ function GetInputType(_ref) {
1239
1295
  tabelName: _p.tabelName,
1240
1296
  product: _p.product,
1241
1297
  placeholder: _p.placeholder,
1242
- userId: _p.editUserId
1298
+ userId: _p.editUserId,
1299
+ selectCTA: _p.selectCTA
1243
1300
  },
1244
1301
  label: _p.label,
1245
1302
  secondaryLabel: _p.secondaryLabel,
@@ -1256,7 +1313,8 @@ function GetInputType(_ref) {
1256
1313
  placeHolderCheck: inputState[_p.name] !== undefined && inputState[_p.name].value === '',
1257
1314
  hasInfoIcon: !!_p.tooltip,
1258
1315
  tooltipText: _p.tooltip,
1259
- disableText: _p.disableText
1316
+ disableText: _p.disableText,
1317
+ selectCTA: _p.selectCTA
1260
1318
  });
1261
1319
 
1262
1320
  default:
@@ -1930,7 +1988,8 @@ var uploadSingleDocumnet = function uploadSingleDocumnet(payload) {
1930
1988
  return function (dispatch) {
1931
1989
  var itemTypes = {
1932
1990
  passport: 'passport',
1933
- travel_docs: 'travel_docs'
1991
+ travel_docs: 'travel_docs',
1992
+ profile_pic: 'profile_pic'
1934
1993
  };
1935
1994
  return new Promise(function (resolve, reject) {
1936
1995
  api$1.get(userAddEditUrl.preSignedUrl() + "?action=upload&item_type=" + payload.itemType + "&file_name=" + payload.fileName).then(function (res) {
@@ -2131,6 +2190,19 @@ var verifyUserInfo = function verifyUserInfo(userId) {
2131
2190
  });
2132
2191
  };
2133
2192
  };
2193
+ var submitAddModalData = function submitAddModalData(tableName, data) {
2194
+ return function (dispatch) {
2195
+ return new Promise(function (resolve, reject) {
2196
+ api$1.post(userAddEditUrl.dropdownList() + ("?action=add&table=" + tableName), data).then(function (res) {
2197
+ resolve(res);
2198
+ })["catch"](function (err) {
2199
+ var _err$response10, _err$response10$data;
2200
+
2201
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response10 = err.response) === null || _err$response10 === void 0 ? void 0 : (_err$response10$data = _err$response10.data) === null || _err$response10$data === void 0 ? void 0 : _err$response10$data.message) || 'Opps, Something went wrong.');
2202
+ });
2203
+ });
2204
+ };
2205
+ };
2134
2206
 
2135
2207
  var SHOW_LOADER$1 = 'SHOW_LOADER';
2136
2208
  var STOP_LOADER$1 = 'STOP_LOADER';
@@ -4507,6 +4579,53 @@ var ErrorMessages = {
4507
4579
  products: 'Please select atleast one product access.'
4508
4580
  };
4509
4581
 
4582
+ function AddPanelDialog(_ref) {
4583
+ var name = _ref.name,
4584
+ isOpen = _ref.isOpen,
4585
+ closeHandler = _ref.closeHandler,
4586
+ submitHandler = _ref.submitHandler,
4587
+ customHandler = _ref.customHandler,
4588
+ isError = _ref.isError,
4589
+ isDisabledSubmitBtn = _ref.isDisabledSubmitBtn,
4590
+ validation = _ref.validation;
4591
+ return /*#__PURE__*/React.createElement(IUIModal, {
4592
+ isDisabledSubmitBtn: isDisabledSubmitBtn,
4593
+ isOpen: isOpen,
4594
+ closeHandler: closeHandler,
4595
+ headerText: "Add " + name.toLowerCase(),
4596
+ cancelLabel: "Cancel",
4597
+ submitLabel: "Add",
4598
+ submitHandler: submitHandler,
4599
+ width: "365px",
4600
+ hideCloseIcon: false,
4601
+ modalBodyStyle: {
4602
+ maxHeight: '600px',
4603
+ overflow: 'auto',
4604
+ margin: '0px'
4605
+ },
4606
+ footerStyle: {
4607
+ justifyContent: 'end'
4608
+ }
4609
+ }, /*#__PURE__*/React.createElement(IUIBox, {
4610
+ component: "div",
4611
+ display: "flex",
4612
+ justifyContent: "center",
4613
+ alignItems: "center",
4614
+ flexDirection: "column",
4615
+ padding: "8px 20px"
4616
+ }, /*#__PURE__*/React.createElement(IUIInput, {
4617
+ label: name + " name",
4618
+ name: "name",
4619
+ defaultValue: "",
4620
+ customHandler: customHandler,
4621
+ placeholder: "",
4622
+ validation: validation,
4623
+ isError: isError,
4624
+ errorMsg: "Please enter " + name.toLowerCase() + " name.",
4625
+ required: true
4626
+ })));
4627
+ }
4628
+
4510
4629
  var IUIToastMessageService$4 = services.IUIToastMessageService;
4511
4630
  var env$4 = configs.env;
4512
4631
 
@@ -4601,7 +4720,8 @@ var UserAddEdit = function UserAddEdit(props) {
4601
4720
  dob: '',
4602
4721
  gender: '',
4603
4722
  country_code: countryCode,
4604
- contact_country_code: ''
4723
+ contact_country_code: '',
4724
+ profile_pic: []
4605
4725
  }),
4606
4726
  personalInfoInput = _useState2[0],
4607
4727
  setPersonalInfoInput = _useState2[1];
@@ -4751,7 +4871,8 @@ var UserAddEdit = function UserAddEdit(props) {
4751
4871
  passport_photo: '',
4752
4872
  travel_docs: '',
4753
4873
  products: '',
4754
- userTagType: ''
4874
+ userTagType: '',
4875
+ profile_pic: ''
4755
4876
  }),
4756
4877
  errorMsgs = _useState20[0],
4757
4878
  setErrorMsgs = _useState20[1];
@@ -4780,7 +4901,8 @@ var UserAddEdit = function UserAddEdit(props) {
4780
4901
  nationality: false,
4781
4902
  passport_issue_date: false,
4782
4903
  passport_expiry_date: false,
4783
- userTagType: false
4904
+ userTagType: false,
4905
+ profile_pic: false
4784
4906
  }),
4785
4907
  inputChangeLog = _useState21[0],
4786
4908
  updateInputChangeLog = _useState21[1];
@@ -4789,44 +4911,197 @@ var UserAddEdit = function UserAddEdit(props) {
4789
4911
  uploadedFiles = _useState22[0],
4790
4912
  setUploadedFiles = _useState22[1];
4791
4913
 
4792
- var onPersonalInfoChange = function onPersonalInfoChange(_name, _value, _isError, _errorMsg, _obj) {
4793
- if (_obj === void 0) {
4794
- _obj = {};
4914
+ var defaultAddModalData = {
4915
+ isOpen: false,
4916
+ isError: false,
4917
+ title: '',
4918
+ value: '',
4919
+ id: ''
4920
+ };
4921
+ var modalValidation = {
4922
+ regexOnChange: /^[A-Za-z]+[A-Za-z0-9()&'\-_. ]*$/,
4923
+ regexOnBlur: null,
4924
+ maxLimit: '',
4925
+ minLimit: '',
4926
+ maxLength: 70,
4927
+ minLength: 0
4928
+ };
4929
+
4930
+ var _useState23 = useState(defaultAddModalData),
4931
+ addModalData = _useState23[0],
4932
+ setAddModalData = _useState23[1];
4933
+
4934
+ var onAddModalClose = function onAddModalClose() {
4935
+ setAddModalData(_extends({}, defaultAddModalData));
4936
+ };
4937
+
4938
+ var onModalOpen = function onModalOpen(e, id) {
4939
+ var title = '';
4940
+
4941
+ if (id === 'entity') {
4942
+ title = 'Entity';
4943
+ } else if (id === 'department') {
4944
+ title = 'Department';
4945
+ } else if (id === 'business_unit') {
4946
+ title = 'Business Unit';
4947
+ } else if (id === 'employee_level') {
4948
+ title = 'Employee Level';
4795
4949
  }
4796
4950
 
4797
- if (_name === 'contact_number') {
4798
- setPersonalInfoInput(_extends({}, personalInfoInput, {
4799
- contact_number: _value.trim(),
4800
- country_code: _obj.code,
4801
- contact_country_code: _obj.contact_country_code
4951
+ console.log(_extends({}, addModalData, {
4952
+ isOpen: true,
4953
+ title: title,
4954
+ id: id
4955
+ }));
4956
+ setAddModalData(_extends({}, addModalData, {
4957
+ isOpen: true,
4958
+ title: title,
4959
+ id: id
4960
+ }));
4961
+ };
4962
+
4963
+ var onAddModalSubmit = function onAddModalSubmit() {
4964
+ var validatedValue = addModalData.value.replace(/\s+/g, ' ').trim();
4965
+
4966
+ if (validatedValue === '') {
4967
+ setAddModalData(_extends({}, addModalData, {
4968
+ isError: true
4802
4969
  }));
4803
- updateError('contact_number', _isError, _errorMsg);
4804
- updateError('country_code', _isError, _errorMsg);
4805
- updateError('contact_country_code', _isError, _errorMsg);
4806
4970
  } else {
4807
- var _extends2;
4971
+ dispatch(showLoader());
4972
+ dispatch(submitAddModalData(addModalData.id, {
4973
+ names: [validatedValue]
4974
+ })).then(function (res) {
4975
+ var _extends2;
4808
4976
 
4809
- setPersonalInfoInput(_extends({}, personalInfoInput, (_extends2 = {}, _extends2[_name] = _value, _extends2)));
4810
- updateError(_name, _isError, _errorMsg);
4977
+ console.log(res, "success add " + addModalData.title + " response");
4978
+ setAddModalData(_extends({}, addModalData, {
4979
+ isOpen: false
4980
+ }));
4981
+ IUIToastMessageService$4.sNotify(addModalData.title + " added successfully.");
4982
+ setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends2 = {}, _extends2[addModalData.id] = {
4983
+ value: res.data.value,
4984
+ label: res.data.label
4985
+ }, _extends2)));
4986
+ dispatch(stopLoader());
4987
+ });
4811
4988
  }
4989
+ };
4812
4990
 
4813
- if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4814
- var _extends3;
4991
+ var onFocusOutModalInput = function onFocusOutModalInput(name, value) {
4992
+ var validatedValue = value.replace(/\s+/g, ' ').trim();
4993
+ var error = addModalData.isError;
4994
+ setAddModalData(_extends({}, addModalData, {
4995
+ value: validatedValue,
4996
+ isError: validatedValue === '' ? false : error
4997
+ }));
4998
+ };
4999
+
5000
+ var onPersonalInfoChange = function onPersonalInfoChange(_name, _value, _isError, _errorMsg, _obj) {
5001
+ if (_isError === void 0) {
5002
+ _isError = false;
5003
+ }
4815
5004
 
4816
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends3 = {}, _extends3[_name] = true, _extends3)));
5005
+ if (_errorMsg === void 0) {
5006
+ _errorMsg = '';
5007
+ }
5008
+
5009
+ if (_obj === void 0) {
5010
+ _obj = {};
5011
+ }
5012
+
5013
+ try {
5014
+ var _temp6 = function _temp6() {
5015
+ if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
5016
+ var _extends3;
5017
+
5018
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends3 = {}, _extends3[_name] = true, _extends3)));
5019
+ }
5020
+ };
5021
+
5022
+ var _temp7 = function () {
5023
+ if (_name === 'contact_number') {
5024
+ setPersonalInfoInput(_extends({}, personalInfoInput, {
5025
+ contact_number: _value.trim(),
5026
+ country_code: _obj.code,
5027
+ contact_country_code: _obj.contact_country_code
5028
+ }));
5029
+ updateError('contact_number', _isError, _errorMsg);
5030
+ updateError('country_code', _isError, _errorMsg);
5031
+ updateError('contact_country_code', _isError, _errorMsg);
5032
+ } else {
5033
+ var _temp8 = function _temp8() {
5034
+ var _extends4;
5035
+
5036
+ setPersonalInfoInput(_extends({}, personalInfoInput, (_extends4 = {}, _extends4[_name] = _value, _extends4)));
5037
+ updateError(_name, _isError, _errorMsg);
5038
+ };
5039
+
5040
+ var _temp9 = function () {
5041
+ if (_name === 'profile_pic') {
5042
+ var _temp10 = function () {
5043
+ if (_isError.isUpload) {
5044
+ return Promise.resolve(uploadDocs(_value, _name)).then(function (docsData) {
5045
+ _value = _value.map(function (_val) {
5046
+ var found = docsData.find(function (doc) {
5047
+ return doc.user_file_name === _val.name;
5048
+ });
5049
+
5050
+ if (found) {
5051
+ _val.returned_file_name = found.returned_file_name;
5052
+ }
5053
+
5054
+ return _val;
5055
+ });
5056
+ });
5057
+ } else if (_isError.isDeleted) {
5058
+ var _deletedFiles = [];
5059
+
5060
+ var _uploadedFiles = uploadedFiles.filter(function (file) {
5061
+ if (_name === 'profile_pic' && file.file_type !== 'profile_pic') {
5062
+ return true;
5063
+ }
5064
+
5065
+ var result = !!_value.find(function (_file) {
5066
+ return _file.name === file.user_file_name;
5067
+ });
5068
+
5069
+ if (result === false && file.isExistingFile === true) {
5070
+ _deletedFiles.push(file.id);
5071
+ }
5072
+
5073
+ return result;
5074
+ });
5075
+
5076
+ setUploadedFiles(_uploadedFiles);
5077
+ setFilesForDelete([].concat(filesForDelete, _deletedFiles));
5078
+ }
5079
+ }();
5080
+
5081
+ if (_temp10 && _temp10.then) return _temp10.then(function () {});
5082
+ }
5083
+ }();
5084
+
5085
+ return _temp9 && _temp9.then ? _temp9.then(_temp8) : _temp8(_temp9);
5086
+ }
5087
+ }();
5088
+
5089
+ return Promise.resolve(_temp7 && _temp7.then ? _temp7.then(_temp6) : _temp6(_temp7));
5090
+ } catch (e) {
5091
+ return Promise.reject(e);
4817
5092
  }
4818
5093
  };
4819
5094
 
4820
5095
  var onEmployeeInfoChange = function onEmployeeInfoChange(_name, _value, _isError, _errorMsg, _obj) {
4821
- var _extends4;
5096
+ var _extends5;
4822
5097
 
4823
- setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends4 = {}, _extends4[_name] = _value, _extends4)));
5098
+ setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends5 = {}, _extends5[_name] = _value, _extends5)));
4824
5099
  updateError(_name, _isError, _errorMsg);
4825
5100
 
4826
5101
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4827
- var _extends5;
5102
+ var _extends6;
4828
5103
 
4829
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends5 = {}, _extends5[_name] = true, _extends5)));
5104
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends6 = {}, _extends6[_name] = true, _extends6)));
4830
5105
  }
4831
5106
  };
4832
5107
 
@@ -4838,9 +5113,9 @@ var UserAddEdit = function UserAddEdit(props) {
4838
5113
  };
4839
5114
 
4840
5115
  var onUserTagTypeChange = function onUserTagTypeChange(e) {
4841
- var _extends6;
5116
+ var _extends7;
4842
5117
 
4843
- setUserTagType(_extends({}, userTagType, (_extends6 = {}, _extends6[e.target.name] = userTagType[e.target.name] ? false : getUserTagTypeId(e.target.name), _extends6)));
5118
+ setUserTagType(_extends({}, userTagType, (_extends7 = {}, _extends7[e.target.name] = userTagType[e.target.name] ? false : getUserTagTypeId(e.target.name), _extends7)));
4844
5119
 
4845
5120
  if (Object.hasOwnProperty.call(inputChangeLog, 'userTagType')) {
4846
5121
  updateInputChangeLog(_extends({}, inputChangeLog, {
@@ -4850,21 +5125,21 @@ var UserAddEdit = function UserAddEdit(props) {
4850
5125
  };
4851
5126
 
4852
5127
  var onCustomFieldsChange = function onCustomFieldsChange(_name, _value) {
4853
- var _extends7;
5128
+ var _extends8;
4854
5129
 
4855
- setCustomFieldsInput(_extends({}, customFieldsInput, (_extends7 = {}, _extends7[_name] = _value, _extends7)));
5130
+ setCustomFieldsInput(_extends({}, customFieldsInput, (_extends8 = {}, _extends8[_name] = _value, _extends8)));
4856
5131
  };
4857
5132
 
4858
5133
  var onTravelApproversInputChange = function onTravelApproversInputChange(_name, _value) {
4859
- var _extends8;
5134
+ var _extends9;
4860
5135
 
4861
- setTravelApproversInput(_extends({}, travelApproversInput, (_extends8 = {}, _extends8[_name] = _value, _extends8)));
5136
+ setTravelApproversInput(_extends({}, travelApproversInput, (_extends9 = {}, _extends9[_name] = _value, _extends9)));
4862
5137
  };
4863
5138
 
4864
5139
  var onExpenseApproversInputChange = function onExpenseApproversInputChange(_name, _value) {
4865
- var _extends9;
5140
+ var _extends10;
4866
5141
 
4867
- setExpenseApproversInput(_extends({}, expenseApproversInput, (_extends9 = {}, _extends9[_name] = _value, _extends9)));
5142
+ setExpenseApproversInput(_extends({}, expenseApproversInput, (_extends10 = {}, _extends10[_name] = _value, _extends10)));
4868
5143
  };
4869
5144
 
4870
5145
  var onMemInfoInputChange = function onMemInfoInputChange(index, key, val) {
@@ -4894,28 +5169,28 @@ var UserAddEdit = function UserAddEdit(props) {
4894
5169
  };
4895
5170
 
4896
5171
  var travelPreferenceOnChange = function travelPreferenceOnChange(_name, _value, _isError, _errorMsg) {
4897
- var _extends10;
5172
+ var _extends11;
4898
5173
 
4899
- settravelPreferenceInfo(_extends({}, travelPreferenceInfo, (_extends10 = {}, _extends10[_name] = _value, _extends10)));
5174
+ settravelPreferenceInfo(_extends({}, travelPreferenceInfo, (_extends11 = {}, _extends11[_name] = _value, _extends11)));
4900
5175
 
4901
5176
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4902
- var _extends11;
5177
+ var _extends12;
4903
5178
 
4904
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends11 = {}, _extends11[_name] = true, _extends11)));
5179
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends12 = {}, _extends12[_name] = true, _extends12)));
4905
5180
  }
4906
5181
 
4907
5182
  updateError(_name, _isError, _errorMsg);
4908
5183
  };
4909
5184
 
4910
5185
  var onSecureTraveelerInfoInputChange = function onSecureTraveelerInfoInputChange(_name, _value, _isError, _errorMsg) {
4911
- var _extends12;
5186
+ var _extends13;
4912
5187
 
4913
- setSecureTravelInputInfo(_extends({}, secureTravelInputInfo, (_extends12 = {}, _extends12[_name] = _value, _extends12)));
5188
+ setSecureTravelInputInfo(_extends({}, secureTravelInputInfo, (_extends13 = {}, _extends13[_name] = _value, _extends13)));
4914
5189
 
4915
5190
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4916
- var _extends13;
5191
+ var _extends14;
4917
5192
 
4918
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends13 = {}, _extends13[_name] = true, _extends13)));
5193
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends14 = {}, _extends14[_name] = true, _extends14)));
4919
5194
  }
4920
5195
 
4921
5196
  updateError(_name, _isError, _errorMsg);
@@ -4935,15 +5210,15 @@ var UserAddEdit = function UserAddEdit(props) {
4935
5210
  }
4936
5211
 
4937
5212
  try {
4938
- var _temp4 = function _temp4() {
4939
- var _extends14;
5213
+ var _temp14 = function _temp14() {
5214
+ var _extends15;
4940
5215
 
4941
- setPassportInfoInput(_extends({}, passportInfoInput, (_extends14 = {}, _extends14[_name] = _value, _extends14)));
5216
+ setPassportInfoInput(_extends({}, passportInfoInput, (_extends15 = {}, _extends15[_name] = _value, _extends15)));
4942
5217
 
4943
5218
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4944
- var _extends15;
5219
+ var _extends16;
4945
5220
 
4946
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends15 = {}, _extends15[_name] = true, _extends15)));
5221
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends16 = {}, _extends16[_name] = true, _extends16)));
4947
5222
  }
4948
5223
 
4949
5224
  updateError(_name, _isError, _errorMsg);
@@ -4977,15 +5252,17 @@ var UserAddEdit = function UserAddEdit(props) {
4977
5252
  return Promise.resolve();
4978
5253
  }
4979
5254
 
4980
- var _temp5 = function () {
5255
+ var _temp15 = function () {
4981
5256
  if (_name === 'passport_photo' || _name === 'travel_docs') {
4982
- var _temp6 = function () {
5257
+ var _temp16 = function () {
4983
5258
  if (_obj.isUpload) {
4984
5259
  var checkAlreadyUploadedFiles = uploadedFiles.filter(function (_file) {
4985
5260
  if (_name === 'passport_photo') {
4986
5261
  return _file.file_type === 'passport';
4987
- } else {
5262
+ } else if (_name === 'travel_docs') {
4988
5263
  return _file.file_type === 'travel_docs';
5264
+ } else {
5265
+ return false;
4989
5266
  }
4990
5267
  }).map(function (_file) {
4991
5268
  return _file.user_file_name;
@@ -5029,11 +5306,11 @@ var UserAddEdit = function UserAddEdit(props) {
5029
5306
  }
5030
5307
  }();
5031
5308
 
5032
- if (_temp6 && _temp6.then) return _temp6.then(function () {});
5309
+ if (_temp16 && _temp16.then) return _temp16.then(function () {});
5033
5310
  }
5034
5311
  }();
5035
5312
 
5036
- return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(_temp4) : _temp4(_temp5));
5313
+ return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(_temp14) : _temp14(_temp15));
5037
5314
  } catch (e) {
5038
5315
  return Promise.reject(e);
5039
5316
  }
@@ -5056,9 +5333,9 @@ var UserAddEdit = function UserAddEdit(props) {
5056
5333
  return _errorArray;
5057
5334
  });
5058
5335
  setErrorMsgs(function (prevState) {
5059
- var _extends16;
5336
+ var _extends17;
5060
5337
 
5061
- return _extends({}, prevState, (_extends16 = {}, _extends16[_name] = _errorMsg, _extends16));
5338
+ return _extends({}, prevState, (_extends17 = {}, _extends17[_name] = _errorMsg, _extends17));
5062
5339
  });
5063
5340
  };
5064
5341
 
@@ -5104,6 +5381,19 @@ var UserAddEdit = function UserAddEdit(props) {
5104
5381
  })).then(function (res) {
5105
5382
  var _res$user_tags, _res$custom_attribute;
5106
5383
 
5384
+ var profilePic = [];
5385
+
5386
+ if (res && res.profile_pic) {
5387
+ profilePic = [{
5388
+ name: res.profile_pic.user_file_name,
5389
+ id: res.profile_pic.id,
5390
+ isExistingFile: true,
5391
+ file_path: res.profile_pic.file_path,
5392
+ file_type: res.profile_pic.file_type,
5393
+ presigned_url: res.profile_pic.presigned_url
5394
+ }];
5395
+ }
5396
+
5107
5397
  setPersonalInfoInput(_extends({}, personalInfoInput, {
5108
5398
  first_name: res.first_name || '',
5109
5399
  last_name: res.last_name || '',
@@ -5112,7 +5402,8 @@ var UserAddEdit = function UserAddEdit(props) {
5112
5402
  dob: res.personal_info.dob || '',
5113
5403
  gender: res.personal_info.gender || '',
5114
5404
  country_code: res.personal_info.country_code || countryCode,
5115
- contact_country_code: res.personal_info.contact_country_code || ''
5405
+ contact_country_code: res.personal_info.contact_country_code || '',
5406
+ profile_pic: profilePic || []
5116
5407
  }));
5117
5408
  setEmployeeInfoInput(_extends({}, employeeInfoInput, {
5118
5409
  emp_level: res.employee_info.emp_level ? {
@@ -5244,6 +5535,16 @@ var UserAddEdit = function UserAddEdit(props) {
5244
5535
  file_type: _file.file_type
5245
5536
  });
5246
5537
  });
5538
+
5539
+ if (res && res.profile_pic) {
5540
+ _uploadedDocs.push({
5541
+ user_file_name: res.profile_pic.user_file_name,
5542
+ id: res.profile_pic.id,
5543
+ isExistingFile: true,
5544
+ file_type: res.profile_pic.file_type
5545
+ });
5546
+ }
5547
+
5247
5548
  setPassportInfoInput(_extends({}, passportInfoInput, {
5248
5549
  passport_issue_country: res !== null && res !== void 0 && (_res$travel_info = res.travel_info) !== null && _res$travel_info !== void 0 && _res$travel_info.passport_issue_country ? {
5249
5550
  label: res.travel_info.passport_issue_country,
@@ -5364,7 +5665,7 @@ var UserAddEdit = function UserAddEdit(props) {
5364
5665
 
5365
5666
  var uploadDocs = function uploadDocs(docToUpload, type) {
5366
5667
  try {
5367
- var _temp9 = function _temp9() {
5668
+ var _temp19 = function _temp19() {
5368
5669
  setUploadedFiles([].concat(uploadedFiles, data));
5369
5670
  dispatch(stopLoader());
5370
5671
  return data;
@@ -5377,17 +5678,18 @@ var UserAddEdit = function UserAddEdit(props) {
5377
5678
  docs.push({
5378
5679
  itemType: type,
5379
5680
  fileName: doc.name,
5380
- file: doc
5681
+ file: doc,
5682
+ userID: editUserId
5381
5683
  });
5382
5684
  });
5383
5685
 
5384
- var _temp10 = _forTo(docs, function (i) {
5686
+ var _temp20 = _forTo(docs, function (i) {
5385
5687
  return Promise.resolve(dispatch(uploadSingleDocumnet(docs[i]))).then(function (res) {
5386
5688
  data.push(res);
5387
5689
  });
5388
5690
  });
5389
5691
 
5390
- return Promise.resolve(_temp10 && _temp10.then ? _temp10.then(_temp9) : _temp9(_temp10));
5692
+ return Promise.resolve(_temp20 && _temp20.then ? _temp20.then(_temp19) : _temp19(_temp20));
5391
5693
  } catch (e) {
5392
5694
  return Promise.reject(e);
5393
5695
  }
@@ -5773,7 +6075,6 @@ var UserAddEdit = function UserAddEdit(props) {
5773
6075
  if (verifyUserId) {
5774
6076
  dispatch(showLoader());
5775
6077
  dispatch(verifyUserInfo(verifyUserId)).then(function (res) {
5776
- console.log(res);
5777
6078
  setPersonalInfoInput(function (prevState) {
5778
6079
  return _extends({}, prevState, {
5779
6080
  first_name: res.fname,
@@ -5999,6 +6300,10 @@ var UserAddEdit = function UserAddEdit(props) {
5999
6300
  container: true,
6000
6301
  className: clsx(styles.formFieldsWrapper, styles.firstRowMargin)
6001
6302
  }, renderFields.workInfo.map(function (p, i) {
6303
+ if (p.type === 'async_select' && p.selectCTA) {
6304
+ p.selectCTA.callback = onModalOpen;
6305
+ }
6306
+
6002
6307
  if (!p.visibility) {
6003
6308
  return null;
6004
6309
  }
@@ -6158,6 +6463,14 @@ var UserAddEdit = function UserAddEdit(props) {
6158
6463
  }))) : /*#__PURE__*/React.createElement(VerificationError, {
6159
6464
  config: config,
6160
6465
  errMsg: hasVerificationError
6466
+ }), /*#__PURE__*/React.createElement(AddPanelDialog, {
6467
+ name: addModalData.title,
6468
+ isOpen: addModalData.isOpen,
6469
+ isError: addModalData.isError,
6470
+ closeHandler: onAddModalClose,
6471
+ customHandler: onFocusOutModalInput,
6472
+ submitHandler: onAddModalSubmit,
6473
+ validation: modalValidation
6161
6474
  }));
6162
6475
  };
6163
6476
 
@@ -8581,53 +8894,6 @@ function Listview(_ref) {
8581
8894
  })));
8582
8895
  }
8583
8896
 
8584
- function AddPanelDialog(_ref) {
8585
- var name = _ref.name,
8586
- isOpen = _ref.isOpen,
8587
- closeHandler = _ref.closeHandler,
8588
- submitHandler = _ref.submitHandler,
8589
- customHandler = _ref.customHandler,
8590
- isError = _ref.isError,
8591
- isDisabledSubmitBtn = _ref.isDisabledSubmitBtn,
8592
- validation = _ref.validation;
8593
- return /*#__PURE__*/React.createElement(IUIModal, {
8594
- isDisabledSubmitBtn: isDisabledSubmitBtn,
8595
- isOpen: isOpen,
8596
- closeHandler: closeHandler,
8597
- headerText: "Add " + name.toLowerCase(),
8598
- cancelLabel: "Cancel",
8599
- submitLabel: "Add",
8600
- submitHandler: submitHandler,
8601
- width: "365px",
8602
- hideCloseIcon: false,
8603
- modalBodyStyle: {
8604
- maxHeight: '600px',
8605
- overflow: 'auto',
8606
- margin: '0px'
8607
- },
8608
- footerStyle: {
8609
- justifyContent: 'end'
8610
- }
8611
- }, /*#__PURE__*/React.createElement(IUIBox, {
8612
- component: "div",
8613
- display: "flex",
8614
- justifyContent: "center",
8615
- alignItems: "center",
8616
- flexDirection: "column",
8617
- padding: "8px 20px"
8618
- }, /*#__PURE__*/React.createElement(IUIInput, {
8619
- label: name + " name",
8620
- name: "name",
8621
- defaultValue: "",
8622
- customHandler: customHandler,
8623
- placeholder: "",
8624
- validation: validation,
8625
- isError: isError,
8626
- errorMsg: "Please enter " + name.toLowerCase() + " name.",
8627
- required: true
8628
- })));
8629
- }
8630
-
8631
8897
  function DeletePanelModal(_ref) {
8632
8898
  var isOpen = _ref.isOpen,
8633
8899
  closeHandler = _ref.closeHandler,
@@ -8925,7 +9191,7 @@ var UserPanel = function UserPanel(_ref) {
8925
9191
  };
8926
9192
 
8927
9193
  var validation = {
8928
- regexOnChange: /^[A-Za-z]+[A-Za-z0-9()&'\-_. ]*$/,
9194
+ regexOnChange: /^[(A-Z)(a-z)(0-9)&'\-_.,/: ]*$/,
8929
9195
  regexOnBlur: null,
8930
9196
  maxLimit: '',
8931
9197
  minLimit: '',