@itilite/iui-user-management 0.3.21 → 0.4.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.
@@ -392,6 +392,15 @@ var userAddEditUrl = {
392
392
  editUser: function editUser(userId) {
393
393
  return "api/v1/user-management/users/" + userId;
394
394
  },
395
+ primaryAdmin: function primaryAdmin(userId) {
396
+ return "api/v1/user-management/mark-primary/" + userId;
397
+ },
398
+ resetPasswordForUserApi: function resetPasswordForUserApi() {
399
+ return "account/auth/password-reset/";
400
+ },
401
+ resendInviteForUserApi: function resendInviteForUserApi() {
402
+ return "api/v1/user-management/resend-welcome-email";
403
+ },
395
404
  deletePaymentCard: function deletePaymentCard(pmId, vendorId) {
396
405
  return env.getPaymentUrl() + "/api/v1/card/delete/" + pmId + "/" + vendorId + "/1";
397
406
  },
@@ -1491,6 +1500,64 @@ var fetchUserDetails = function fetchUserDetails(payload) {
1491
1500
  });
1492
1501
  };
1493
1502
  };
1503
+ var makePrimaryAdmin = function makePrimaryAdmin(payload) {
1504
+ return function (dispatch) {
1505
+ return new Promise(function (resolve, reject) {
1506
+ api$1.put(userAddEditUrl.primaryAdmin(payload.userId)).then(function (res) {
1507
+ if (res.data.status) {
1508
+ resolve(res.data.result);
1509
+ } else {
1510
+ reject(res);
1511
+ }
1512
+ })["catch"](function (err) {
1513
+ var _err$response6, _err$response6$data;
1514
+
1515
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response6 = err.response) === null || _err$response6 === void 0 ? void 0 : (_err$response6$data = _err$response6.data) === null || _err$response6$data === void 0 ? void 0 : _err$response6$data.message) || 'Opps, Something went wrong.');
1516
+ reject(err);
1517
+ });
1518
+ });
1519
+ };
1520
+ };
1521
+ var resetPasswordForUser = function resetPasswordForUser(data) {
1522
+ return function (dispatch) {
1523
+ return new Promise(function (resolve, reject) {
1524
+ api$1.post("" + userAddEditUrl.resetPasswordForUserApi(), {
1525
+ email: data.email
1526
+ }).then(function (res) {
1527
+ IUIToastMessageService.sNotify(' Reset password link sent successfully');
1528
+ resolve();
1529
+ })["catch"](function (err) {
1530
+ if (!err.response.data.status) {
1531
+ IUIToastMessageService.errNotify(err);
1532
+ reject(err);
1533
+ return;
1534
+ }
1535
+
1536
+ reject(err);
1537
+ });
1538
+ });
1539
+ };
1540
+ };
1541
+ var resendInviteForUser = function resendInviteForUser(data) {
1542
+ return function (dispatch) {
1543
+ return new Promise(function (resolve, reject) {
1544
+ api$1.post(userAddEditUrl.resendInviteForUserApi(), {
1545
+ user_ids: data
1546
+ }).then(function (res) {
1547
+ IUIToastMessageService.sNotify('Reset password link sent successfully');
1548
+ resolve();
1549
+ })["catch"](function (err) {
1550
+ if (!err.response.data.status) {
1551
+ IUIToastMessageService.errNotify(err);
1552
+ reject(err);
1553
+ return;
1554
+ }
1555
+
1556
+ reject(err);
1557
+ });
1558
+ });
1559
+ };
1560
+ };
1494
1561
  var updateUser = function updateUser(payload, userId, inputChangeLog) {
1495
1562
  return function (dispatch) {
1496
1563
  return new Promise(function (resolve, reject) {
@@ -1506,11 +1573,11 @@ var updateUser = function updateUser(payload, userId, inputChangeLog) {
1506
1573
  reject(res.data.errors);
1507
1574
  }
1508
1575
  })["catch"](function (err) {
1509
- var _err$response6;
1576
+ var _err$response7;
1510
1577
 
1511
1578
  var error = 'Opps, Something went error.';
1512
1579
 
1513
- if (err !== null && err !== void 0 && (_err$response6 = err.response) !== null && _err$response6 !== void 0 && _err$response6.data) {
1580
+ if (err !== null && err !== void 0 && (_err$response7 = err.response) !== null && _err$response7 !== void 0 && _err$response7.data) {
1514
1581
  if (err.response.data.errors && typeof err.response.data.errors === 'object' && Object.keys(err.response.data.errors).length) {
1515
1582
  reject(err.response.data.errors);
1516
1583
  return;
@@ -1559,9 +1626,9 @@ var deletePaymentCard = function deletePaymentCard(payload) {
1559
1626
  reject(res);
1560
1627
  }
1561
1628
  })["catch"](function (err) {
1562
- var _err$response7, _err$response7$data;
1629
+ var _err$response8, _err$response8$data;
1563
1630
 
1564
- IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response7 = err.response) === null || _err$response7 === void 0 ? void 0 : (_err$response7$data = _err$response7.data) === null || _err$response7$data === void 0 ? void 0 : _err$response7$data.message) || 'Opps, Something went wrong.');
1631
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response8 = err.response) === null || _err$response8 === void 0 ? void 0 : (_err$response8$data = _err$response8.data) === null || _err$response8$data === void 0 ? void 0 : _err$response8$data.message) || 'Opps, Something went wrong.');
1565
1632
  reject(err);
1566
1633
  })["finally"](function () {
1567
1634
  dispatch(stopLoader());
@@ -1598,9 +1665,9 @@ var setDefaultPaymentCard = function setDefaultPaymentCard(payload) {
1598
1665
  reject(res);
1599
1666
  }
1600
1667
  })["catch"](function (err) {
1601
- var _err$response8, _err$response8$data;
1668
+ var _err$response9, _err$response9$data;
1602
1669
 
1603
- IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response8 = err.response) === null || _err$response8 === void 0 ? void 0 : (_err$response8$data = _err$response8.data) === null || _err$response8$data === void 0 ? void 0 : _err$response8$data.message) || 'Opps, Something went wrong.');
1670
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response9 = err.response) === null || _err$response9 === void 0 ? void 0 : (_err$response9$data = _err$response9.data) === null || _err$response9$data === void 0 ? void 0 : _err$response9$data.message) || 'Opps, Something went wrong.');
1604
1671
  reject(err);
1605
1672
  })["finally"](function () {
1606
1673
  dispatch(stopLoader());
@@ -1624,9 +1691,9 @@ var verifyUserInfo = function verifyUserInfo(userId) {
1624
1691
  reject(res);
1625
1692
  }
1626
1693
  })["catch"](function (err) {
1627
- var _err$response9, _err$response9$data;
1694
+ var _err$response10, _err$response10$data;
1628
1695
 
1629
- IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response9 = err.response) === null || _err$response9 === void 0 ? void 0 : (_err$response9$data = _err$response9.data) === null || _err$response9$data === void 0 ? void 0 : _err$response9$data.message) || 'Opps, Unable to fetch user info.');
1696
+ 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, Unable to fetch user info.');
1630
1697
  setTimeout(function () {
1631
1698
  window.history.back();
1632
1699
  }, 1000);
@@ -1641,9 +1708,9 @@ var submitAddModalData = function submitAddModalData(tableName, data) {
1641
1708
  api$1.post(userAddEditUrl.dropdownList() + ("?action=add&table=" + tableName), data).then(function (res) {
1642
1709
  resolve(res);
1643
1710
  })["catch"](function (err) {
1644
- var _err$response10, _err$response10$data;
1711
+ var _err$response11, _err$response11$data;
1645
1712
 
1646
- 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.');
1713
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response11 = err.response) === null || _err$response11 === void 0 ? void 0 : (_err$response11$data = _err$response11.data) === null || _err$response11$data === void 0 ? void 0 : _err$response11$data.message) || 'Opps, Something went wrong.');
1647
1714
  dispatch(stopLoader());
1648
1715
  });
1649
1716
  });
@@ -1667,10 +1734,10 @@ var rejectUserVerification = function rejectUserVerification(userId) {
1667
1734
  reject(res);
1668
1735
  }
1669
1736
  })["catch"](function (err) {
1670
- var _err$response11, _err$response11$data;
1737
+ var _err$response12, _err$response12$data;
1671
1738
 
1672
1739
  console.log(err);
1673
- IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response11 = err.response) === null || _err$response11 === void 0 ? void 0 : (_err$response11$data = _err$response11.data) === null || _err$response11$data === void 0 ? void 0 : _err$response11$data.message) || 'Opps, Unable to reject user.');
1740
+ IUIToastMessageService.warningNotify((err === null || err === void 0 ? void 0 : (_err$response12 = err.response) === null || _err$response12 === void 0 ? void 0 : (_err$response12$data = _err$response12.data) === null || _err$response12$data === void 0 ? void 0 : _err$response12$data.message) || 'Opps, Unable to reject user.');
1674
1741
  reject(err);
1675
1742
  });
1676
1743
  });
@@ -2686,11 +2753,6 @@ var AddCustomFieldModal = function AddCustomFieldModal(_ref) {
2686
2753
  return;
2687
2754
  }
2688
2755
 
2689
- if (inputValue.length > 100) {
2690
- setCustomLabelErr('The data being inserted exceeds the maximum allowable character limit of 100 characters.');
2691
- return;
2692
- }
2693
-
2694
2756
  setLoading(true);
2695
2757
 
2696
2758
  if (isEditMode && editId) {
@@ -5299,7 +5361,6 @@ var UserAddEdit = function UserAddEdit(props) {
5299
5361
  };
5300
5362
 
5301
5363
  var onModalOpen = function onModalOpen(e, id) {
5302
- console.log('onModalOpen', e, id);
5303
5364
  var title = '';
5304
5365
 
5305
5366
  if (id === 'entity') {
@@ -8575,6 +8636,10 @@ var StickyHeadTable = function StickyHeadTable(props) {
8575
8636
  selected = props.selected,
8576
8637
  _props$handleSingleCh = props.handleSingleCheckBoxClick,
8577
8638
  handleSingleCheckBoxClick = _props$handleSingleCh === void 0 ? function () {} : _props$handleSingleCh,
8639
+ _props$onResetPasswor = props.onResetPasswordHandler,
8640
+ onResetPasswordHandler = _props$onResetPasswor === void 0 ? function () {} : _props$onResetPasswor,
8641
+ _props$onResendInvite = props.onResendInviteHandler,
8642
+ onResendInviteHandler = _props$onResendInvite === void 0 ? function () {} : _props$onResendInvite,
8578
8643
  orderBy = props.orderBy,
8579
8644
  order = props.order,
8580
8645
  _props$onRequestSort = props.onRequestSort,
@@ -8583,11 +8648,15 @@ var StickyHeadTable = function StickyHeadTable(props) {
8583
8648
  onSearchHandler = _props$onSearchHandle === void 0 ? function () {} : _props$onSearchHandle,
8584
8649
  _props$onEditHandler = props.onEditHandler,
8585
8650
  onEditHandler = _props$onEditHandler === void 0 ? function () {} : _props$onEditHandler,
8651
+ _props$onPrimaryAdmin = props.onPrimaryAdminHandler,
8652
+ onPrimaryAdminHandler = _props$onPrimaryAdmin === void 0 ? function () {} : _props$onPrimaryAdmin,
8586
8653
  _props$isDataFetching = props.isDataFetching,
8587
8654
  isDataFetching = _props$isDataFetching === void 0 ? false : _props$isDataFetching,
8588
8655
  _props$disableRowChec = props.disableRowCheckbox,
8589
8656
  disableRowCheckbox = _props$disableRowChec === void 0 ? false : _props$disableRowChec,
8590
- searchValue = props.searchValue;
8657
+ searchValue = props.searchValue,
8658
+ _props$isILadmin = props.isILadmin,
8659
+ isILadmin = _props$isILadmin === void 0 ? false : _props$isILadmin;
8591
8660
  var columns = [{
8592
8661
  id: 'first_name',
8593
8662
  label: 'Name',
@@ -8599,7 +8668,7 @@ var StickyHeadTable = function StickyHeadTable(props) {
8599
8668
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIProfileBox, {
8600
8669
  firstName: row.first_name,
8601
8670
  lastName: row.last_name,
8602
- isLetterAvatar: row.profile_pic && row.profile_pic.presigned_url ? false : true,
8671
+ isLetterAvatar: !(row.profile_pic && row.profile_pic.presigned_url),
8603
8672
  primaryText: row.first_name + ' ' + row.last_name,
8604
8673
  secondaryText: row.email,
8605
8674
  letterAvatarTextColor: "black",
@@ -8608,6 +8677,17 @@ var StickyHeadTable = function StickyHeadTable(props) {
8608
8677
  profilePath: row === null || row === void 0 ? void 0 : (_row$profile_pic = row.profile_pic) === null || _row$profile_pic === void 0 ? void 0 : _row$profile_pic.presigned_url
8609
8678
  }));
8610
8679
  }
8680
+ }, {
8681
+ id: 'first_name',
8682
+ label: '',
8683
+ minWidth: 100,
8684
+ sortable: true,
8685
+ cell: function cell(row) {
8686
+ return /*#__PURE__*/React.createElement(IUIBox, {
8687
+ component: "div",
8688
+ width: 100
8689
+ }, row && row.has_visited === 0 ? 'Invited' : '');
8690
+ }
8611
8691
  }, {
8612
8692
  id: 'emp_info__department__name',
8613
8693
  label: 'Department',
@@ -8689,11 +8769,42 @@ var StickyHeadTable = function StickyHeadTable(props) {
8689
8769
  minWidth: 170,
8690
8770
  align: 'left',
8691
8771
  cell: function cell(row) {
8692
- return /*#__PURE__*/React.createElement(IUIButton, {
8693
- buttonText: "Edit",
8694
- onClick: function onClick() {
8772
+ var options = [{
8773
+ label: 'Edit details',
8774
+ handler: function handler() {
8695
8775
  return onEditHandler(row.id);
8696
8776
  }
8777
+ }];
8778
+
8779
+ if (isILadmin) {
8780
+ options.push({
8781
+ label: 'Make primary admin',
8782
+ handler: function handler() {
8783
+ return onPrimaryAdminHandler(row.id);
8784
+ }
8785
+ });
8786
+ }
8787
+
8788
+ if (row && row.has_visited) {
8789
+ options.push({
8790
+ label: 'Reset password',
8791
+ handler: function handler() {
8792
+ return onResetPasswordHandler(row.email);
8793
+ }
8794
+ });
8795
+ } else {
8796
+ options.push({
8797
+ label: 'Resend invite',
8798
+ handler: function handler() {
8799
+ return onResendInviteHandler(row.id);
8800
+ }
8801
+ });
8802
+ }
8803
+
8804
+ return /*#__PURE__*/React.createElement(IUIDropdownButton, {
8805
+ buttonText: "Options",
8806
+ type: "outlined",
8807
+ menuListInfo: options
8697
8808
  });
8698
8809
  },
8699
8810
  style: {
@@ -8945,6 +9056,24 @@ var UserList = function UserList(_ref) {
8945
9056
  handleImportPagenavigation(jobId);
8946
9057
  };
8947
9058
 
9059
+ var onResetPasswordHandler = function onResetPasswordHandler(email) {
9060
+ dispatch(resetPasswordForUser({
9061
+ email: email
9062
+ }));
9063
+ };
9064
+
9065
+ var onResendInviteHandler = function onResendInviteHandler(userId) {
9066
+ var userIdArr = [];
9067
+
9068
+ if (userId && !isNaN(userId)) {
9069
+ userIdArr = [userId];
9070
+ } else if (selected[page] && selected[page].length) {
9071
+ userIdArr = selected[page];
9072
+ }
9073
+
9074
+ dispatch(resendInviteForUser(userIdArr));
9075
+ };
9076
+
8948
9077
  var handleExportUsers = function handleExportUsers() {
8949
9078
  try {
8950
9079
  setDownlStatus(true);
@@ -8986,12 +9115,22 @@ var UserList = function UserList(_ref) {
8986
9115
  }, {
8987
9116
  label: 'Bulk action history',
8988
9117
  handler: handleBulkActionHistoryClick
9118
+ }, {
9119
+ label: 'Send invite',
9120
+ handler: onResendInviteHandler
8989
9121
  }];
8990
9122
  useEffect(function () {
8991
9123
  var roleCanAccess = ['travel_itilite_admin', 'travel_admin', 'expense_itilite_admin', 'expense_admin'];
8992
9124
  dispatch(showDataFetchingStatus());
8993
9125
  dispatch(verifyAccessToken(roleCanAccess));
8994
9126
  }, []);
9127
+
9128
+ var onPrimaryAdminHandler = function onPrimaryAdminHandler(userId) {
9129
+ dispatch(makePrimaryAdmin({
9130
+ userId: userId
9131
+ }));
9132
+ };
9133
+
8995
9134
  var dispatch = useDispatch();
8996
9135
  useEffect(function () {
8997
9136
  if (isTokenVerified === true) {
@@ -9129,7 +9268,11 @@ var UserList = function UserList(_ref) {
9129
9268
  onSearchHandler: onSearchHandler,
9130
9269
  onEditHandler: handleEditUserClick,
9131
9270
  disableRowCheckbox: deactivatedUsers,
9132
- searchValue: searchValue
9271
+ searchValue: searchValue,
9272
+ isILadmin: isILadmin,
9273
+ onPrimaryAdminHandler: onPrimaryAdminHandler,
9274
+ onResetPasswordHandler: onResetPasswordHandler,
9275
+ onResendInviteHandler: onResendInviteHandler
9133
9276
  }))), /*#__PURE__*/React.createElement(IUIModal, {
9134
9277
  isOpen: Object.values(selected).flat().length > 0 && isOpenDeActivateModal,
9135
9278
  closeHandler: closeDeActivateModal,