@itilite/iui-user-management 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -191,7 +191,7 @@ function toVal(mix) {
191
191
  return str;
192
192
  }
193
193
 
194
- function clsx () {
194
+ function clsx() {
195
195
  var i = 0,
196
196
  tmp,
197
197
  x,
@@ -314,7 +314,9 @@ var userPanelUrl = {
314
314
  var api = utils.configs.api;
315
315
  var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref) {
316
316
  var page = _ref.page,
317
- tabelName = _ref.tabelName;
317
+ tabelName = _ref.tabelName,
318
+ placeholder = _ref.placeholder,
319
+ selectCTA = _ref.selectCTA;
318
320
 
319
321
  try {
320
322
  return Promise.resolve(_catch(function () {
@@ -329,16 +331,25 @@ var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref)
329
331
  };
330
332
  });
331
333
 
332
- if (NAoptionConfig.applyFor.includes(tabelName)) {
334
+ if (page === 1 && NAoptionConfig.applyFor.includes(tabelName)) {
333
335
  mappedValue.unshift(NAoptionConfig.option);
334
336
  }
335
337
 
338
+ if (response.next === null && selectCTA) {
339
+ mappedValue.push({
340
+ value: selectCTA.value,
341
+ label: ''
342
+ });
343
+ }
344
+
336
345
  return {
337
346
  options: mappedValue,
338
347
  hasMore: !!response.next,
339
348
  additional: {
340
349
  page: page + 1,
341
- tabelName: tabelName
350
+ tabelName: tabelName,
351
+ placeholder: placeholder,
352
+ selectCTA: selectCTA
342
353
  }
343
354
  };
344
355
  });
@@ -348,7 +359,9 @@ var commonLoadOptions = function commonLoadOptions(search, loadedOptions, _ref)
348
359
  hasMore: false,
349
360
  additional: {
350
361
  page: 1,
351
- tabelName: tabelName
362
+ tabelName: tabelName,
363
+ placeholder: placeholder,
364
+ selectCTA: selectCTA
352
365
  }
353
366
  };
354
367
  }));
@@ -408,11 +421,15 @@ var approversOptions = function approversOptions(search, loadedOptions, _ref4) {
408
421
  label: item.approver
409
422
  };
410
423
  });
411
- var placeholderLbl = {
412
- value: '',
413
- label: placeholder
414
- };
415
- mappedValue.unshift(placeholderLbl);
424
+
425
+ if (page === 1) {
426
+ var placeholderLbl = {
427
+ value: '',
428
+ label: placeholder
429
+ };
430
+ mappedValue.unshift(placeholderLbl);
431
+ }
432
+
416
433
  return {
417
434
  options: mappedValue,
418
435
  hasMore: !!response.next,
@@ -596,7 +613,21 @@ var personalInfo = [{
596
613
  disableText: 'Please get in touch with your administrator to change this value.'
597
614
  }, {
598
615
  id: 8,
599
- empty: true
616
+ label: 'Profile photo',
617
+ description: 'This will be displayed on your profile',
618
+ name: 'profile_pic',
619
+ required: false,
620
+ multiple: false,
621
+ fileType: 'image/png,image/jpeg,image/jpg,image/webp',
622
+ fileSize: 5,
623
+ title: 'Select Profile',
624
+ type: 'file',
625
+ fullWidth: true,
626
+ visibility: true,
627
+ readOnly: false,
628
+ maxNoFiles: 2,
629
+ buttonType: 'profile',
630
+ disableText: 'Disable text here.'
600
631
  }];
601
632
  var workInfo = [{
602
633
  id: 1,
@@ -613,7 +644,14 @@ var workInfo = [{
613
644
  loadOption: commonLoadOptions,
614
645
  tabelName: 'employee_level',
615
646
  tooltip: 'This information will be used in creation of policies and approval rules',
616
- disableText: 'Please get in touch with your administrator to change this value.'
647
+ disableText: 'Please get in touch with your administrator to change this value.',
648
+ selectCTA: {
649
+ value: 'employee_level',
650
+ component: /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
651
+ className: "iui__font--color-link iui__font--weight-500"
652
+ }, "+ Add Employee Level"),
653
+ callback: null
654
+ }
617
655
  }, {
618
656
  id: 2,
619
657
  label: 'Employee ID',
@@ -648,7 +686,14 @@ var workInfo = [{
648
686
  loadOption: commonLoadOptions,
649
687
  tabelName: 'entity',
650
688
  tooltip: 'This information will be used in creation of policies and approval rules',
651
- disableText: 'Please get in touch with your administrator to change this value.'
689
+ disableText: 'Please get in touch with your administrator to change this value.',
690
+ selectCTA: {
691
+ value: 'entity',
692
+ component: /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
693
+ className: "iui__font--color-link iui__font--weight-500"
694
+ }, "+ Add Entity"),
695
+ callback: null
696
+ }
652
697
  }, {
653
698
  id: 4,
654
699
  label: 'Business unit',
@@ -663,7 +708,14 @@ var workInfo = [{
663
708
  placeholder: 'Select unit',
664
709
  tabelName: 'business_unit',
665
710
  loadOption: commonLoadOptions,
666
- disableText: 'Please get in touch with your administrator to change this value.'
711
+ disableText: 'Please get in touch with your administrator to change this value.',
712
+ selectCTA: {
713
+ value: 'business_unit',
714
+ component: /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
715
+ className: "iui__font--color-link iui__font--weight-500"
716
+ }, "+ Add Business Unit"),
717
+ callback: null
718
+ }
667
719
  }, {
668
720
  id: 5,
669
721
  label: 'Department',
@@ -678,7 +730,14 @@ var workInfo = [{
678
730
  placeholder: 'Select department',
679
731
  tabelName: 'department',
680
732
  loadOption: commonLoadOptions,
681
- disableText: 'Please get in touch with your administrator to change this value.'
733
+ disableText: 'Please get in touch with your administrator to change this value.',
734
+ selectCTA: {
735
+ value: 'department',
736
+ component: /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
737
+ className: "iui__font--color-link iui__font--weight-500"
738
+ }, "+ Add Department"),
739
+ callback: null
740
+ }
682
741
  }, {
683
742
  id: 6,
684
743
  label: 'Designation',
@@ -1227,7 +1286,8 @@ function GetInputType(_ref) {
1227
1286
  readOnly: _p.readOnly,
1228
1287
  hasInfoIcon: !!_p.tooltip,
1229
1288
  tooltipText: _p.tooltip,
1230
- disableText: _p.disableText
1289
+ disableText: _p.disableText,
1290
+ buttonType: _p.buttonType
1231
1291
  }));
1232
1292
 
1233
1293
  case 'async_select':
@@ -1238,7 +1298,8 @@ function GetInputType(_ref) {
1238
1298
  tabelName: _p.tabelName,
1239
1299
  product: _p.product,
1240
1300
  placeholder: _p.placeholder,
1241
- userId: _p.editUserId
1301
+ userId: _p.editUserId,
1302
+ selectCTA: _p.selectCTA
1242
1303
  },
1243
1304
  label: _p.label,
1244
1305
  secondaryLabel: _p.secondaryLabel,
@@ -1255,7 +1316,8 @@ function GetInputType(_ref) {
1255
1316
  placeHolderCheck: inputState[_p.name] !== undefined && inputState[_p.name].value === '',
1256
1317
  hasInfoIcon: !!_p.tooltip,
1257
1318
  tooltipText: _p.tooltip,
1258
- disableText: _p.disableText
1319
+ disableText: _p.disableText,
1320
+ selectCTA: _p.selectCTA
1259
1321
  });
1260
1322
 
1261
1323
  default:
@@ -1929,7 +1991,8 @@ var uploadSingleDocumnet = function uploadSingleDocumnet(payload) {
1929
1991
  return function (dispatch) {
1930
1992
  var itemTypes = {
1931
1993
  passport: 'passport',
1932
- travel_docs: 'travel_docs'
1994
+ travel_docs: 'travel_docs',
1995
+ profile_pic: 'profile_pic'
1933
1996
  };
1934
1997
  return new Promise(function (resolve, reject) {
1935
1998
  api$1.get(userAddEditUrl.preSignedUrl() + "?action=upload&item_type=" + payload.itemType + "&file_name=" + payload.fileName).then(function (res) {
@@ -2130,6 +2193,19 @@ var verifyUserInfo = function verifyUserInfo(userId) {
2130
2193
  });
2131
2194
  };
2132
2195
  };
2196
+ var submitAddModalData = function submitAddModalData(tableName, data) {
2197
+ return function (dispatch) {
2198
+ return new Promise(function (resolve, reject) {
2199
+ api$1.post(userAddEditUrl.dropdownList() + ("?action=add&table=" + tableName), data).then(function (res) {
2200
+ resolve(res);
2201
+ })["catch"](function (err) {
2202
+ var _err$response10, _err$response10$data;
2203
+
2204
+ 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.');
2205
+ });
2206
+ });
2207
+ };
2208
+ };
2133
2209
 
2134
2210
  var SHOW_LOADER$1 = 'SHOW_LOADER';
2135
2211
  var STOP_LOADER$1 = 'STOP_LOADER';
@@ -4506,6 +4582,53 @@ var ErrorMessages = {
4506
4582
  products: 'Please select atleast one product access.'
4507
4583
  };
4508
4584
 
4585
+ function AddPanelDialog(_ref) {
4586
+ var name = _ref.name,
4587
+ isOpen = _ref.isOpen,
4588
+ closeHandler = _ref.closeHandler,
4589
+ submitHandler = _ref.submitHandler,
4590
+ customHandler = _ref.customHandler,
4591
+ isError = _ref.isError,
4592
+ isDisabledSubmitBtn = _ref.isDisabledSubmitBtn,
4593
+ validation = _ref.validation;
4594
+ return /*#__PURE__*/React__default.createElement(iuistyles.IUIModal, {
4595
+ isDisabledSubmitBtn: isDisabledSubmitBtn,
4596
+ isOpen: isOpen,
4597
+ closeHandler: closeHandler,
4598
+ headerText: "Add " + name.toLowerCase(),
4599
+ cancelLabel: "Cancel",
4600
+ submitLabel: "Add",
4601
+ submitHandler: submitHandler,
4602
+ width: "365px",
4603
+ hideCloseIcon: false,
4604
+ modalBodyStyle: {
4605
+ maxHeight: '600px',
4606
+ overflow: 'auto',
4607
+ margin: '0px'
4608
+ },
4609
+ footerStyle: {
4610
+ justifyContent: 'end'
4611
+ }
4612
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
4613
+ component: "div",
4614
+ display: "flex",
4615
+ justifyContent: "center",
4616
+ alignItems: "center",
4617
+ flexDirection: "column",
4618
+ padding: "8px 20px"
4619
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUIInput, {
4620
+ label: name + " name",
4621
+ name: "name",
4622
+ defaultValue: "",
4623
+ customHandler: customHandler,
4624
+ placeholder: "",
4625
+ validation: validation,
4626
+ isError: isError,
4627
+ errorMsg: "Please enter " + name.toLowerCase() + " name.",
4628
+ required: true
4629
+ })));
4630
+ }
4631
+
4509
4632
  var IUIToastMessageService$4 = utils.services.IUIToastMessageService;
4510
4633
  var env$4 = utils.configs.env;
4511
4634
 
@@ -4600,7 +4723,8 @@ var UserAddEdit = function UserAddEdit(props) {
4600
4723
  dob: '',
4601
4724
  gender: '',
4602
4725
  country_code: countryCode,
4603
- contact_country_code: ''
4726
+ contact_country_code: '',
4727
+ profile_pic: []
4604
4728
  }),
4605
4729
  personalInfoInput = _useState2[0],
4606
4730
  setPersonalInfoInput = _useState2[1];
@@ -4750,7 +4874,8 @@ var UserAddEdit = function UserAddEdit(props) {
4750
4874
  passport_photo: '',
4751
4875
  travel_docs: '',
4752
4876
  products: '',
4753
- userTagType: ''
4877
+ userTagType: '',
4878
+ profile_pic: ''
4754
4879
  }),
4755
4880
  errorMsgs = _useState20[0],
4756
4881
  setErrorMsgs = _useState20[1];
@@ -4779,7 +4904,8 @@ var UserAddEdit = function UserAddEdit(props) {
4779
4904
  nationality: false,
4780
4905
  passport_issue_date: false,
4781
4906
  passport_expiry_date: false,
4782
- userTagType: false
4907
+ userTagType: false,
4908
+ profile_pic: false
4783
4909
  }),
4784
4910
  inputChangeLog = _useState21[0],
4785
4911
  updateInputChangeLog = _useState21[1];
@@ -4788,44 +4914,197 @@ var UserAddEdit = function UserAddEdit(props) {
4788
4914
  uploadedFiles = _useState22[0],
4789
4915
  setUploadedFiles = _useState22[1];
4790
4916
 
4791
- var onPersonalInfoChange = function onPersonalInfoChange(_name, _value, _isError, _errorMsg, _obj) {
4792
- if (_obj === void 0) {
4793
- _obj = {};
4917
+ var defaultAddModalData = {
4918
+ isOpen: false,
4919
+ isError: false,
4920
+ title: '',
4921
+ value: '',
4922
+ id: ''
4923
+ };
4924
+ var modalValidation = {
4925
+ regexOnChange: /^[A-Za-z]+[A-Za-z0-9()&'\-_. ]*$/,
4926
+ regexOnBlur: null,
4927
+ maxLimit: '',
4928
+ minLimit: '',
4929
+ maxLength: 70,
4930
+ minLength: 0
4931
+ };
4932
+
4933
+ var _useState23 = React.useState(defaultAddModalData),
4934
+ addModalData = _useState23[0],
4935
+ setAddModalData = _useState23[1];
4936
+
4937
+ var onAddModalClose = function onAddModalClose() {
4938
+ setAddModalData(_extends({}, defaultAddModalData));
4939
+ };
4940
+
4941
+ var onModalOpen = function onModalOpen(e, id) {
4942
+ var title = '';
4943
+
4944
+ if (id === 'entity') {
4945
+ title = 'Entity';
4946
+ } else if (id === 'department') {
4947
+ title = 'Department';
4948
+ } else if (id === 'business_unit') {
4949
+ title = 'Business Unit';
4950
+ } else if (id === 'employee_level') {
4951
+ title = 'Employee Level';
4794
4952
  }
4795
4953
 
4796
- if (_name === 'contact_number') {
4797
- setPersonalInfoInput(_extends({}, personalInfoInput, {
4798
- contact_number: _value.trim(),
4799
- country_code: _obj.code,
4800
- contact_country_code: _obj.contact_country_code
4954
+ console.log(_extends({}, addModalData, {
4955
+ isOpen: true,
4956
+ title: title,
4957
+ id: id
4958
+ }));
4959
+ setAddModalData(_extends({}, addModalData, {
4960
+ isOpen: true,
4961
+ title: title,
4962
+ id: id
4963
+ }));
4964
+ };
4965
+
4966
+ var onAddModalSubmit = function onAddModalSubmit() {
4967
+ var validatedValue = addModalData.value.replace(/\s+/g, ' ').trim();
4968
+
4969
+ if (validatedValue === '') {
4970
+ setAddModalData(_extends({}, addModalData, {
4971
+ isError: true
4801
4972
  }));
4802
- updateError('contact_number', _isError, _errorMsg);
4803
- updateError('country_code', _isError, _errorMsg);
4804
- updateError('contact_country_code', _isError, _errorMsg);
4805
4973
  } else {
4806
- var _extends2;
4974
+ dispatch(showLoader());
4975
+ dispatch(submitAddModalData(addModalData.id, {
4976
+ names: [validatedValue]
4977
+ })).then(function (res) {
4978
+ var _extends2;
4807
4979
 
4808
- setPersonalInfoInput(_extends({}, personalInfoInput, (_extends2 = {}, _extends2[_name] = _value, _extends2)));
4809
- updateError(_name, _isError, _errorMsg);
4980
+ console.log(res, "success add " + addModalData.title + " response");
4981
+ setAddModalData(_extends({}, addModalData, {
4982
+ isOpen: false
4983
+ }));
4984
+ IUIToastMessageService$4.sNotify(addModalData.title + " added successfully.");
4985
+ setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends2 = {}, _extends2[addModalData.id] = {
4986
+ value: res.data.value,
4987
+ label: res.data.label
4988
+ }, _extends2)));
4989
+ dispatch(stopLoader());
4990
+ });
4810
4991
  }
4992
+ };
4811
4993
 
4812
- if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4813
- var _extends3;
4994
+ var onFocusOutModalInput = function onFocusOutModalInput(name, value) {
4995
+ var validatedValue = value.replace(/\s+/g, ' ').trim();
4996
+ var error = addModalData.isError;
4997
+ setAddModalData(_extends({}, addModalData, {
4998
+ value: validatedValue,
4999
+ isError: validatedValue === '' ? false : error
5000
+ }));
5001
+ };
4814
5002
 
4815
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends3 = {}, _extends3[_name] = true, _extends3)));
5003
+ var onPersonalInfoChange = function onPersonalInfoChange(_name, _value, _isError, _errorMsg, _obj) {
5004
+ if (_isError === void 0) {
5005
+ _isError = false;
5006
+ }
5007
+
5008
+ if (_errorMsg === void 0) {
5009
+ _errorMsg = '';
5010
+ }
5011
+
5012
+ if (_obj === void 0) {
5013
+ _obj = {};
5014
+ }
5015
+
5016
+ try {
5017
+ var _temp6 = function _temp6() {
5018
+ if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
5019
+ var _extends3;
5020
+
5021
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends3 = {}, _extends3[_name] = true, _extends3)));
5022
+ }
5023
+ };
5024
+
5025
+ var _temp7 = function () {
5026
+ if (_name === 'contact_number') {
5027
+ setPersonalInfoInput(_extends({}, personalInfoInput, {
5028
+ contact_number: _value.trim(),
5029
+ country_code: _obj.code,
5030
+ contact_country_code: _obj.contact_country_code
5031
+ }));
5032
+ updateError('contact_number', _isError, _errorMsg);
5033
+ updateError('country_code', _isError, _errorMsg);
5034
+ updateError('contact_country_code', _isError, _errorMsg);
5035
+ } else {
5036
+ var _temp8 = function _temp8() {
5037
+ var _extends4;
5038
+
5039
+ setPersonalInfoInput(_extends({}, personalInfoInput, (_extends4 = {}, _extends4[_name] = _value, _extends4)));
5040
+ updateError(_name, _isError, _errorMsg);
5041
+ };
5042
+
5043
+ var _temp9 = function () {
5044
+ if (_name === 'profile_pic') {
5045
+ var _temp10 = function () {
5046
+ if (_isError.isUpload) {
5047
+ return Promise.resolve(uploadDocs(_value, _name)).then(function (docsData) {
5048
+ _value = _value.map(function (_val) {
5049
+ var found = docsData.find(function (doc) {
5050
+ return doc.user_file_name === _val.name;
5051
+ });
5052
+
5053
+ if (found) {
5054
+ _val.returned_file_name = found.returned_file_name;
5055
+ }
5056
+
5057
+ return _val;
5058
+ });
5059
+ });
5060
+ } else if (_isError.isDeleted) {
5061
+ var _deletedFiles = [];
5062
+
5063
+ var _uploadedFiles = uploadedFiles.filter(function (file) {
5064
+ if (_name === 'profile_pic' && file.file_type !== 'profile_pic') {
5065
+ return true;
5066
+ }
5067
+
5068
+ var result = !!_value.find(function (_file) {
5069
+ return _file.name === file.user_file_name;
5070
+ });
5071
+
5072
+ if (result === false && file.isExistingFile === true) {
5073
+ _deletedFiles.push(file.id);
5074
+ }
5075
+
5076
+ return result;
5077
+ });
5078
+
5079
+ setUploadedFiles(_uploadedFiles);
5080
+ setFilesForDelete([].concat(filesForDelete, _deletedFiles));
5081
+ }
5082
+ }();
5083
+
5084
+ if (_temp10 && _temp10.then) return _temp10.then(function () {});
5085
+ }
5086
+ }();
5087
+
5088
+ return _temp9 && _temp9.then ? _temp9.then(_temp8) : _temp8(_temp9);
5089
+ }
5090
+ }();
5091
+
5092
+ return Promise.resolve(_temp7 && _temp7.then ? _temp7.then(_temp6) : _temp6(_temp7));
5093
+ } catch (e) {
5094
+ return Promise.reject(e);
4816
5095
  }
4817
5096
  };
4818
5097
 
4819
5098
  var onEmployeeInfoChange = function onEmployeeInfoChange(_name, _value, _isError, _errorMsg, _obj) {
4820
- var _extends4;
5099
+ var _extends5;
4821
5100
 
4822
- setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends4 = {}, _extends4[_name] = _value, _extends4)));
5101
+ setEmployeeInfoInput(_extends({}, employeeInfoInput, (_extends5 = {}, _extends5[_name] = _value, _extends5)));
4823
5102
  updateError(_name, _isError, _errorMsg);
4824
5103
 
4825
5104
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4826
- var _extends5;
5105
+ var _extends6;
4827
5106
 
4828
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends5 = {}, _extends5[_name] = true, _extends5)));
5107
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends6 = {}, _extends6[_name] = true, _extends6)));
4829
5108
  }
4830
5109
  };
4831
5110
 
@@ -4837,9 +5116,9 @@ var UserAddEdit = function UserAddEdit(props) {
4837
5116
  };
4838
5117
 
4839
5118
  var onUserTagTypeChange = function onUserTagTypeChange(e) {
4840
- var _extends6;
5119
+ var _extends7;
4841
5120
 
4842
- setUserTagType(_extends({}, userTagType, (_extends6 = {}, _extends6[e.target.name] = userTagType[e.target.name] ? false : getUserTagTypeId(e.target.name), _extends6)));
5121
+ setUserTagType(_extends({}, userTagType, (_extends7 = {}, _extends7[e.target.name] = userTagType[e.target.name] ? false : getUserTagTypeId(e.target.name), _extends7)));
4843
5122
 
4844
5123
  if (Object.hasOwnProperty.call(inputChangeLog, 'userTagType')) {
4845
5124
  updateInputChangeLog(_extends({}, inputChangeLog, {
@@ -4849,21 +5128,21 @@ var UserAddEdit = function UserAddEdit(props) {
4849
5128
  };
4850
5129
 
4851
5130
  var onCustomFieldsChange = function onCustomFieldsChange(_name, _value) {
4852
- var _extends7;
5131
+ var _extends8;
4853
5132
 
4854
- setCustomFieldsInput(_extends({}, customFieldsInput, (_extends7 = {}, _extends7[_name] = _value, _extends7)));
5133
+ setCustomFieldsInput(_extends({}, customFieldsInput, (_extends8 = {}, _extends8[_name] = _value, _extends8)));
4855
5134
  };
4856
5135
 
4857
5136
  var onTravelApproversInputChange = function onTravelApproversInputChange(_name, _value) {
4858
- var _extends8;
5137
+ var _extends9;
4859
5138
 
4860
- setTravelApproversInput(_extends({}, travelApproversInput, (_extends8 = {}, _extends8[_name] = _value, _extends8)));
5139
+ setTravelApproversInput(_extends({}, travelApproversInput, (_extends9 = {}, _extends9[_name] = _value, _extends9)));
4861
5140
  };
4862
5141
 
4863
5142
  var onExpenseApproversInputChange = function onExpenseApproversInputChange(_name, _value) {
4864
- var _extends9;
5143
+ var _extends10;
4865
5144
 
4866
- setExpenseApproversInput(_extends({}, expenseApproversInput, (_extends9 = {}, _extends9[_name] = _value, _extends9)));
5145
+ setExpenseApproversInput(_extends({}, expenseApproversInput, (_extends10 = {}, _extends10[_name] = _value, _extends10)));
4867
5146
  };
4868
5147
 
4869
5148
  var onMemInfoInputChange = function onMemInfoInputChange(index, key, val) {
@@ -4893,28 +5172,28 @@ var UserAddEdit = function UserAddEdit(props) {
4893
5172
  };
4894
5173
 
4895
5174
  var travelPreferenceOnChange = function travelPreferenceOnChange(_name, _value, _isError, _errorMsg) {
4896
- var _extends10;
5175
+ var _extends11;
4897
5176
 
4898
- settravelPreferenceInfo(_extends({}, travelPreferenceInfo, (_extends10 = {}, _extends10[_name] = _value, _extends10)));
5177
+ settravelPreferenceInfo(_extends({}, travelPreferenceInfo, (_extends11 = {}, _extends11[_name] = _value, _extends11)));
4899
5178
 
4900
5179
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4901
- var _extends11;
5180
+ var _extends12;
4902
5181
 
4903
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends11 = {}, _extends11[_name] = true, _extends11)));
5182
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends12 = {}, _extends12[_name] = true, _extends12)));
4904
5183
  }
4905
5184
 
4906
5185
  updateError(_name, _isError, _errorMsg);
4907
5186
  };
4908
5187
 
4909
5188
  var onSecureTraveelerInfoInputChange = function onSecureTraveelerInfoInputChange(_name, _value, _isError, _errorMsg) {
4910
- var _extends12;
5189
+ var _extends13;
4911
5190
 
4912
- setSecureTravelInputInfo(_extends({}, secureTravelInputInfo, (_extends12 = {}, _extends12[_name] = _value, _extends12)));
5191
+ setSecureTravelInputInfo(_extends({}, secureTravelInputInfo, (_extends13 = {}, _extends13[_name] = _value, _extends13)));
4913
5192
 
4914
5193
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4915
- var _extends13;
5194
+ var _extends14;
4916
5195
 
4917
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends13 = {}, _extends13[_name] = true, _extends13)));
5196
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends14 = {}, _extends14[_name] = true, _extends14)));
4918
5197
  }
4919
5198
 
4920
5199
  updateError(_name, _isError, _errorMsg);
@@ -4934,15 +5213,15 @@ var UserAddEdit = function UserAddEdit(props) {
4934
5213
  }
4935
5214
 
4936
5215
  try {
4937
- var _temp4 = function _temp4() {
4938
- var _extends14;
5216
+ var _temp14 = function _temp14() {
5217
+ var _extends15;
4939
5218
 
4940
- setPassportInfoInput(_extends({}, passportInfoInput, (_extends14 = {}, _extends14[_name] = _value, _extends14)));
5219
+ setPassportInfoInput(_extends({}, passportInfoInput, (_extends15 = {}, _extends15[_name] = _value, _extends15)));
4941
5220
 
4942
5221
  if (Object.hasOwnProperty.call(inputChangeLog, _name)) {
4943
- var _extends15;
5222
+ var _extends16;
4944
5223
 
4945
- updateInputChangeLog(_extends({}, inputChangeLog, (_extends15 = {}, _extends15[_name] = true, _extends15)));
5224
+ updateInputChangeLog(_extends({}, inputChangeLog, (_extends16 = {}, _extends16[_name] = true, _extends16)));
4946
5225
  }
4947
5226
 
4948
5227
  updateError(_name, _isError, _errorMsg);
@@ -4976,15 +5255,17 @@ var UserAddEdit = function UserAddEdit(props) {
4976
5255
  return Promise.resolve();
4977
5256
  }
4978
5257
 
4979
- var _temp5 = function () {
5258
+ var _temp15 = function () {
4980
5259
  if (_name === 'passport_photo' || _name === 'travel_docs') {
4981
- var _temp6 = function () {
5260
+ var _temp16 = function () {
4982
5261
  if (_obj.isUpload) {
4983
5262
  var checkAlreadyUploadedFiles = uploadedFiles.filter(function (_file) {
4984
5263
  if (_name === 'passport_photo') {
4985
5264
  return _file.file_type === 'passport';
4986
- } else {
5265
+ } else if (_name === 'travel_docs') {
4987
5266
  return _file.file_type === 'travel_docs';
5267
+ } else {
5268
+ return false;
4988
5269
  }
4989
5270
  }).map(function (_file) {
4990
5271
  return _file.user_file_name;
@@ -5028,11 +5309,11 @@ var UserAddEdit = function UserAddEdit(props) {
5028
5309
  }
5029
5310
  }();
5030
5311
 
5031
- if (_temp6 && _temp6.then) return _temp6.then(function () {});
5312
+ if (_temp16 && _temp16.then) return _temp16.then(function () {});
5032
5313
  }
5033
5314
  }();
5034
5315
 
5035
- return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(_temp4) : _temp4(_temp5));
5316
+ return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(_temp14) : _temp14(_temp15));
5036
5317
  } catch (e) {
5037
5318
  return Promise.reject(e);
5038
5319
  }
@@ -5055,9 +5336,9 @@ var UserAddEdit = function UserAddEdit(props) {
5055
5336
  return _errorArray;
5056
5337
  });
5057
5338
  setErrorMsgs(function (prevState) {
5058
- var _extends16;
5339
+ var _extends17;
5059
5340
 
5060
- return _extends({}, prevState, (_extends16 = {}, _extends16[_name] = _errorMsg, _extends16));
5341
+ return _extends({}, prevState, (_extends17 = {}, _extends17[_name] = _errorMsg, _extends17));
5061
5342
  });
5062
5343
  };
5063
5344
 
@@ -5103,6 +5384,19 @@ var UserAddEdit = function UserAddEdit(props) {
5103
5384
  })).then(function (res) {
5104
5385
  var _res$user_tags, _res$custom_attribute;
5105
5386
 
5387
+ var profilePic = [];
5388
+
5389
+ if (res && res.profile_pic) {
5390
+ profilePic = [{
5391
+ name: res.profile_pic.user_file_name,
5392
+ id: res.profile_pic.id,
5393
+ isExistingFile: true,
5394
+ file_path: res.profile_pic.file_path,
5395
+ file_type: res.profile_pic.file_type,
5396
+ presigned_url: res.profile_pic.presigned_url
5397
+ }];
5398
+ }
5399
+
5106
5400
  setPersonalInfoInput(_extends({}, personalInfoInput, {
5107
5401
  first_name: res.first_name || '',
5108
5402
  last_name: res.last_name || '',
@@ -5111,7 +5405,8 @@ var UserAddEdit = function UserAddEdit(props) {
5111
5405
  dob: res.personal_info.dob || '',
5112
5406
  gender: res.personal_info.gender || '',
5113
5407
  country_code: res.personal_info.country_code || countryCode,
5114
- contact_country_code: res.personal_info.contact_country_code || ''
5408
+ contact_country_code: res.personal_info.contact_country_code || '',
5409
+ profile_pic: profilePic || []
5115
5410
  }));
5116
5411
  setEmployeeInfoInput(_extends({}, employeeInfoInput, {
5117
5412
  emp_level: res.employee_info.emp_level ? {
@@ -5243,6 +5538,16 @@ var UserAddEdit = function UserAddEdit(props) {
5243
5538
  file_type: _file.file_type
5244
5539
  });
5245
5540
  });
5541
+
5542
+ if (res && res.profile_pic) {
5543
+ _uploadedDocs.push({
5544
+ user_file_name: res.profile_pic.user_file_name,
5545
+ id: res.profile_pic.id,
5546
+ isExistingFile: true,
5547
+ file_type: res.profile_pic.file_type
5548
+ });
5549
+ }
5550
+
5246
5551
  setPassportInfoInput(_extends({}, passportInfoInput, {
5247
5552
  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 ? {
5248
5553
  label: res.travel_info.passport_issue_country,
@@ -5363,7 +5668,7 @@ var UserAddEdit = function UserAddEdit(props) {
5363
5668
 
5364
5669
  var uploadDocs = function uploadDocs(docToUpload, type) {
5365
5670
  try {
5366
- var _temp9 = function _temp9() {
5671
+ var _temp19 = function _temp19() {
5367
5672
  setUploadedFiles([].concat(uploadedFiles, data));
5368
5673
  dispatch(stopLoader());
5369
5674
  return data;
@@ -5376,17 +5681,18 @@ var UserAddEdit = function UserAddEdit(props) {
5376
5681
  docs.push({
5377
5682
  itemType: type,
5378
5683
  fileName: doc.name,
5379
- file: doc
5684
+ file: doc,
5685
+ userID: editUserId
5380
5686
  });
5381
5687
  });
5382
5688
 
5383
- var _temp10 = _forTo(docs, function (i) {
5689
+ var _temp20 = _forTo(docs, function (i) {
5384
5690
  return Promise.resolve(dispatch(uploadSingleDocumnet(docs[i]))).then(function (res) {
5385
5691
  data.push(res);
5386
5692
  });
5387
5693
  });
5388
5694
 
5389
- return Promise.resolve(_temp10 && _temp10.then ? _temp10.then(_temp9) : _temp9(_temp10));
5695
+ return Promise.resolve(_temp20 && _temp20.then ? _temp20.then(_temp19) : _temp19(_temp20));
5390
5696
  } catch (e) {
5391
5697
  return Promise.reject(e);
5392
5698
  }
@@ -5772,7 +6078,6 @@ var UserAddEdit = function UserAddEdit(props) {
5772
6078
  if (verifyUserId) {
5773
6079
  dispatch(showLoader());
5774
6080
  dispatch(verifyUserInfo(verifyUserId)).then(function (res) {
5775
- console.log(res);
5776
6081
  setPersonalInfoInput(function (prevState) {
5777
6082
  return _extends({}, prevState, {
5778
6083
  first_name: res.fname,
@@ -5998,6 +6303,10 @@ var UserAddEdit = function UserAddEdit(props) {
5998
6303
  container: true,
5999
6304
  className: clsx(styles.formFieldsWrapper, styles.firstRowMargin)
6000
6305
  }, renderFields.workInfo.map(function (p, i) {
6306
+ if (p.type === 'async_select' && p.selectCTA) {
6307
+ p.selectCTA.callback = onModalOpen;
6308
+ }
6309
+
6001
6310
  if (!p.visibility) {
6002
6311
  return null;
6003
6312
  }
@@ -6157,6 +6466,14 @@ var UserAddEdit = function UserAddEdit(props) {
6157
6466
  }))) : /*#__PURE__*/React__default.createElement(VerificationError, {
6158
6467
  config: config,
6159
6468
  errMsg: hasVerificationError
6469
+ }), /*#__PURE__*/React__default.createElement(AddPanelDialog, {
6470
+ name: addModalData.title,
6471
+ isOpen: addModalData.isOpen,
6472
+ isError: addModalData.isError,
6473
+ closeHandler: onAddModalClose,
6474
+ customHandler: onFocusOutModalInput,
6475
+ submitHandler: onAddModalSubmit,
6476
+ validation: modalValidation
6160
6477
  }));
6161
6478
  };
6162
6479
 
@@ -8580,53 +8897,6 @@ function Listview(_ref) {
8580
8897
  })));
8581
8898
  }
8582
8899
 
8583
- function AddPanelDialog(_ref) {
8584
- var name = _ref.name,
8585
- isOpen = _ref.isOpen,
8586
- closeHandler = _ref.closeHandler,
8587
- submitHandler = _ref.submitHandler,
8588
- customHandler = _ref.customHandler,
8589
- isError = _ref.isError,
8590
- isDisabledSubmitBtn = _ref.isDisabledSubmitBtn,
8591
- validation = _ref.validation;
8592
- return /*#__PURE__*/React__default.createElement(iuistyles.IUIModal, {
8593
- isDisabledSubmitBtn: isDisabledSubmitBtn,
8594
- isOpen: isOpen,
8595
- closeHandler: closeHandler,
8596
- headerText: "Add " + name.toLowerCase(),
8597
- cancelLabel: "Cancel",
8598
- submitLabel: "Add",
8599
- submitHandler: submitHandler,
8600
- width: "365px",
8601
- hideCloseIcon: false,
8602
- modalBodyStyle: {
8603
- maxHeight: '600px',
8604
- overflow: 'auto',
8605
- margin: '0px'
8606
- },
8607
- footerStyle: {
8608
- justifyContent: 'end'
8609
- }
8610
- }, /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
8611
- component: "div",
8612
- display: "flex",
8613
- justifyContent: "center",
8614
- alignItems: "center",
8615
- flexDirection: "column",
8616
- padding: "8px 20px"
8617
- }, /*#__PURE__*/React__default.createElement(iuistyles.IUIInput, {
8618
- label: name + " name",
8619
- name: "name",
8620
- defaultValue: "",
8621
- customHandler: customHandler,
8622
- placeholder: "",
8623
- validation: validation,
8624
- isError: isError,
8625
- errorMsg: "Please enter " + name.toLowerCase() + " name.",
8626
- required: true
8627
- })));
8628
- }
8629
-
8630
8900
  function DeletePanelModal(_ref) {
8631
8901
  var isOpen = _ref.isOpen,
8632
8902
  closeHandler = _ref.closeHandler,
@@ -8924,7 +9194,7 @@ var UserPanel = function UserPanel(_ref) {
8924
9194
  };
8925
9195
 
8926
9196
  var validation = {
8927
- regexOnChange: /^[A-Za-z]+[A-Za-z0-9()&'\-_. ]*$/,
9197
+ regexOnChange: /^[(A-Z)(a-z)(0-9)&'\-_.,/: ]*$/,
8928
9198
  regexOnBlur: null,
8929
9199
  maxLimit: '',
8930
9200
  minLimit: '',