@itilite/iui-user-management 1.4.963 → 1.4.964-beta.10

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.css CHANGED
@@ -376,6 +376,22 @@
376
376
  vertical-align: middle;
377
377
  }
378
378
 
379
+ ._1Oqzs {
380
+ color: #9A6700;
381
+ border-radius: 4px;
382
+ padding: 4px;
383
+ border: 0.5px solid var(--color-red-200, #EAC54F);
384
+ background: var(--surface-critical, #FFFBE0);
385
+ font-size: 10px;
386
+ font-weight: 500;
387
+ line-height: 12px; /* 120% */
388
+ letter-spacing: 0.1px;
389
+ display: inline-block;
390
+ white-space: nowrap;
391
+ vertical-align: middle;
392
+ margin-right: 6px;
393
+ }
394
+
379
395
  ._3G7La._2_sgJ {
380
396
  color: #9A6700;
381
397
  border: 0.5px solid #EAC54F;
package/dist/index.js CHANGED
@@ -187,7 +187,17 @@ function _finallyRethrows(body, finalizer) {
187
187
 
188
188
  var styles = {"UUIUserManagementAddEdit":"_3n-WG","pageHeader":"_3qWcA","buttonWrapper":"_1IP9P","scrolled":"_m8f96","headingButtonWrapper":"_w9z7b","headingButtonWrapperProfile":"_12Wd9","hintText":"_ySdbZ","heading":"_2Y1Aw","headingLarge":"_2K1NF","headingMedium":"_RUuAz","headingSmall":"_23Dye","additionalInfoContainer":"_1Suhw","additionalInfoTitle":"_56iJF","titleContainer":"_H5nfl","expandIconAlign":"_3F4i0","detailsContainer":"_2G0LW","formWrapper":"_2fPRc","sectionWrapper":"_37Gqp","margin":"_2Sdl7","minGridWidth":"_2D7iu","firstRowMargin":"_1BozG","firstChildMargin":"_2C3Mb","paddingTop":"_DBPjV","backGrdColorOnHover":"_5oE6H","fieldMargin":"_RCWjq","productContainerGap":"_tuCbi","containerWidth":"_1oWos","productItemBroder":"_T0Hcd","headingPadding":"_2MFfQ","emptyFieldContainer":"_3VWtw","emptyFieldDescription":"_2jC5u","rowGap":"_1NJFY","formTitle":"_GAKk2","formDescription":"_3TZ6Z","themeLink":"_eJ_1B","dashedLine":"_3ZOs1","dividerColor":"_2pxEJ","errorTextCls":"_27eth","backdrop":"_Pm0Au","inputWidth":"_ajB82","buttonRight":"_1lEyQ","containedDropdownBtn":"_3ymE1"};
189
189
 
190
- function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
190
+ function r(e) {
191
+ var t,
192
+ f,
193
+ n = "";
194
+ if ("string" == typeof e || "number" == typeof e) n += e;else if ("object" == typeof e) if (Array.isArray(e)) for (t = 0; t < e.length; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);else for (t in e) e[t] && (n && (n += " "), n += t);
195
+ return n;
196
+ }
197
+ function clsx() {
198
+ for (var e, t, f = 0, n = ""; f < arguments.length;) (e = arguments[f++]) && (t = r(e)) && (n && (n += " "), n += t);
199
+ return n;
200
+ }
191
201
 
192
202
  var GetInputType = React__default.forwardRef(function (props, ref) {
193
203
  var _p = props._p,
@@ -832,7 +842,7 @@ var UserRole = function UserRole(_ref) {
832
842
 
833
843
  var styles$1 = {"defaultLabel":"_smjc4","card":"_3_S9J","cardNumber":"_36E9M","cardDigit":"_2pm-T","expiryDate":"_2tBnF","cardImage":"_3QvZh","visa":"_1IpBm","mastercard":"_2x6IX","amex":"_2a38S","discover":"_2vksl","diners":"_2kQRs","jcb":"_2bO1f","unionpay":"_2_jfu","is_nothing":"_1Lrzs","addCard":"_3711U","cardDeleteBtn":"_7Da2t","cardLabel":"_PQTex","defaultBtn":"_1_ArA","cursonPointer":"_1L115","sectionWrapper":"_VpUCK","margin":"_1Fs_D","minGridWidth":"_1hl-Z","firstRowMargin":"_1WZZj","firstChildMargin":"_IT_O_","paddingTop":"_Mhnl7","dividerColor":"_3ltFd"};
834
844
 
835
- var classes = {"disabledCard":"_3MVKj","expiredLabel":"_2_sgJ","expiresoonLabel":"_3G7La","sectionHeader":"_2d_OH","myCardsSection":"_3MNHj","companyCardsSection":"_34lN6","disabledNotice":"_1yV0j","cardsGrid":"_1oHGu","card":"_3ZTQc","moreIcon":"_3utA0","personal":"_duePd","corporate":"_3O33a","company":"_180_L","cardHeader":"_1eF61","cardTitleSection":"_2c40W","cardMaskedNumber":"_2Vlhq","cardName":"_bp-Mt","cardAlias":"_19m4v","cardType":"_3l4HZ","menuButton":"_3TTEn","lockIcon":"_1S27X","cardDetails":"_IP2rg","cardNumber":"_7FOPe","cardExpiry":"_CI_p2","cardCvv":"_3Gzqu","cardUnhide":"_ivgBf","cardFooter":"_1WgPL","brandLogo":"_EV0l8","addCardButton":"_1oaCc","plusIcon":"_w9L5L"};
845
+ var classes = {"disabledCard":"_3MVKj","expiredLabel":"_2_sgJ","invalidLabel":"_1Oqzs","expiresoonLabel":"_3G7La","sectionHeader":"_2d_OH","myCardsSection":"_3MNHj","companyCardsSection":"_34lN6","disabledNotice":"_1yV0j","cardsGrid":"_1oHGu","card":"_3ZTQc","moreIcon":"_3utA0","personal":"_duePd","corporate":"_3O33a","company":"_180_L","cardHeader":"_1eF61","cardTitleSection":"_2c40W","cardMaskedNumber":"_2Vlhq","cardName":"_bp-Mt","cardAlias":"_19m4v","cardType":"_3l4HZ","menuButton":"_3TTEn","lockIcon":"_1S27X","cardDetails":"_IP2rg","cardNumber":"_7FOPe","cardExpiry":"_CI_p2","cardCvv":"_3Gzqu","cardUnhide":"_ivgBf","cardFooter":"_1WgPL","brandLogo":"_EV0l8","addCardButton":"_1oaCc","plusIcon":"_w9L5L"};
836
846
 
837
847
  var SHOW_LOADER = 'SHOW_LOADER';
838
848
  var STOP_LOADER = 'STOP_LOADER';
@@ -2661,6 +2671,12 @@ var Visa = function Visa(props) {
2661
2671
  }))));
2662
2672
  };
2663
2673
 
2674
+ var CARDS_DISABLED = {
2675
+ DISABLED: '0',
2676
+ EXPIRED: '2',
2677
+ INVALID: '3'
2678
+ };
2679
+
2664
2680
  var IUILocalStorageService$4 = utils.services.IUILocalStorageService;
2665
2681
  var env$3 = utils.configs.env;
2666
2682
  var CardsManagement = function CardsManagement(_ref) {
@@ -2817,14 +2833,20 @@ var CardsManagement = function CardsManagement(_ref) {
2817
2833
  var isCompanyCard = (card === null || card === void 0 ? void 0 : card.category) === 'Company';
2818
2834
  var cardClass = getCardTypeClass(card === null || card === void 0 ? void 0 : card.category);
2819
2835
  var isDefaultCard = !!+(card === null || card === void 0 ? void 0 : (_card$metadata = card.metadata) === null || _card$metadata === void 0 ? void 0 : _card$metadata.default_card);
2820
- var isExpired = card.metadata.is_enabled === '2';
2821
- var isDisabled = card.metadata.is_enabled === '0' || isExpired;
2836
+ var isExpired = card.metadata.is_enabled === CARDS_DISABLED.EXPIRED;
2837
+ var isInvalid = card.metadata.is_enabled === CARDS_DISABLED.INVALID;
2838
+ var isDisabled = card.metadata.is_enabled === CARDS_DISABLED.DISABLED || isExpired || isInvalid;
2822
2839
  var currentDate = new Date();
2823
2840
  var cardExpDate = new Date(parseInt(card.card.exp_year, 10), parseInt(card.card.exp_month, 10) - 1);
2824
2841
  var timeDiff = cardExpDate.getTime() - currentDate.getTime();
2825
2842
  var daysToExpire = Math.ceil(timeDiff / (1000 * 3600 * 24));
2826
2843
  var expiresSoon = daysToExpire <= 30 && !isExpired;
2827
- return /*#__PURE__*/React__default.createElement("div", {
2844
+ return /*#__PURE__*/React__default.createElement(core.Tooltip, {
2845
+ title: isInvalid ? 'This card is invalid, because you have been issued a new card.' : null,
2846
+ disableHoverListener: !isInvalid,
2847
+ placement: "top",
2848
+ arrow: true
2849
+ }, /*#__PURE__*/React__default.createElement("div", {
2828
2850
  key: card.id,
2829
2851
  className: clsx(classes.card, classes[cardClass], (_clsx = {}, _clsx[classes.disabledCard] = isDisabled, _clsx))
2830
2852
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -2837,7 +2859,9 @@ var CardsManagement = function CardsManagement(_ref) {
2837
2859
  className: classes.cardAlias
2838
2860
  }, card === null || card === void 0 ? void 0 : card.alias), isExpired && /*#__PURE__*/React__default.createElement("span", {
2839
2861
  className: classes.expiredLabel
2840
- }, "Expired"), expiresSoon && /*#__PURE__*/React__default.createElement("span", {
2862
+ }, "Expired"), isInvalid && /*#__PURE__*/React__default.createElement("span", {
2863
+ className: classes.invalidLabel
2864
+ }, "Invalid"), expiresSoon && !isInvalid && /*#__PURE__*/React__default.createElement("span", {
2841
2865
  className: clsx(classes.expiresoonLabel, classes.expiredLabel)
2842
2866
  }, "Expires Soon")), /*#__PURE__*/React__default.createElement("span", {
2843
2867
  className: classes.cardType
@@ -2864,7 +2888,7 @@ var CardsManagement = function CardsManagement(_ref) {
2864
2888
  className: classes.cardCvv
2865
2889
  }, "CVV \u2022\u2022\u2022")), /*#__PURE__*/React__default.createElement("div", {
2866
2890
  className: classes.cardFooter
2867
- }, /*#__PURE__*/React__default.createElement("div", null), getBrandLogo(card === null || card === void 0 ? void 0 : (_card$card4 = card.card) === null || _card$card4 === void 0 ? void 0 : _card$card4.brand)));
2891
+ }, /*#__PURE__*/React__default.createElement("div", null), getBrandLogo(card === null || card === void 0 ? void 0 : (_card$card4 = card.card) === null || _card$card4 === void 0 ? void 0 : _card$card4.brand))));
2868
2892
  };
2869
2893
  var _url = env$3.getPaymentUrl() + ("/api/v1/auth/" + IUILocalStorageService$4.getAccessToken() + "/1/" + pg.entity_id + "/0/" + pg.vendor_id + "/1");
2870
2894
  var showMenuButton = cardsCount === 1 || cardsCount > 1 && !+(selectedCard === null || selectedCard === void 0 ? void 0 : (_selectedCard$metadat = selectedCard.metadata) === null || _selectedCard$metadat === void 0 ? void 0 : _selectedCard$metadat.default_card);
@@ -3070,6 +3094,9 @@ var TravelExpenseFields = function TravelExpenseFields(props) {
3070
3094
  var paymentDetails = reactRedux.useSelector(function (state) {
3071
3095
  return state.userAddEdit.paymentDetails;
3072
3096
  });
3097
+ var isItiliteAdminRoleRestricted = type === 'travel' && roles.some(function (role) {
3098
+ return (role === null || role === void 0 ? void 0 : role.name) === 'travel_itilite_admin';
3099
+ });
3073
3100
  var openEditAproverModal = function openEditAproverModal() {
3074
3101
  setOpenEditAproverModalFlag(true);
3075
3102
  };
@@ -3177,7 +3204,16 @@ var TravelExpenseFields = function TravelExpenseFields(props) {
3177
3204
  }, isProfile ? /*#__PURE__*/React__default.createElement(UserRole, {
3178
3205
  list: roles,
3179
3206
  value: roleValue
3180
- }) : /*#__PURE__*/React__default.createElement(iuistyles.IUIRadio, {
3207
+ }) : isItiliteAdminRoleRestricted ? /*#__PURE__*/React__default.createElement(iuistyles.IUITooltip, {
3208
+ tooltipText: "To change the role, please reach out to IT team"
3209
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUIGrid, {
3210
+ item: true
3211
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUIRadio, {
3212
+ list: roles,
3213
+ value: roleValue,
3214
+ onValueChange: onRoleChange,
3215
+ disabled: true
3216
+ }))) : /*#__PURE__*/React__default.createElement(iuistyles.IUIRadio, {
3181
3217
  list: roles,
3182
3218
  value: roleValue,
3183
3219
  onValueChange: onRoleChange
@@ -10690,9 +10726,11 @@ var UndoButton = function UndoButton(_ref) {
10690
10726
  }, "UNDO"));
10691
10727
  };
10692
10728
  var UserList = function UserList(_ref2) {
10729
+ var _config$features;
10693
10730
  var config = _ref2.config,
10694
10731
  isProfile = _ref2.isProfile;
10695
10732
  env$7.init(config, isProfile);
10733
+ var hideSignupRequestsTab = !!(config !== null && config !== void 0 && (_config$features = config.features) !== null && _config$features !== void 0 && _config$features.hideSignupRequestsTab);
10696
10734
  var history = reactRouterDom.useHistory();
10697
10735
  var _useSelector = reactRedux.useSelector(function (state) {
10698
10736
  return state.userList;
@@ -11293,6 +11331,10 @@ var UserList = function UserList(_ref2) {
11293
11331
  if (!isSearchingChange && !isSortingChange && !isSignUpSearchingChange && !isSignUpSortingChange) {
11294
11332
  dispatch(showDataFetchingStatus());
11295
11333
  dispatch(fetchUsersList(url)).then(function () {
11334
+ if (hideSignupRequestsTab) {
11335
+ dispatch(stopDataFetchingStatus());
11336
+ return;
11337
+ }
11296
11338
  dispatch(fetchUserSignupRequests({
11297
11339
  ordering: signup_order === 'asc' ? signup_orderBy : "-" + signup_orderBy,
11298
11340
  length: signup_rowsPerPage,
@@ -11346,6 +11388,38 @@ var UserList = function UserList(_ref2) {
11346
11388
  onClick: handleAddPageNavigation
11347
11389
  })));
11348
11390
  };
11391
+ var currentUsersPanel = /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11392
+ style: {
11393
+ marginLeft: '-17px'
11394
+ }
11395
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11396
+ component: "div",
11397
+ className: styles$6.headingWrapper
11398
+ }, /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
11399
+ variant: "body2",
11400
+ className: clsx(styles$6.description)
11401
+ }, "Create new users, customize user permissions and manage user accounts")), /*#__PURE__*/React__default.createElement(StickyHeadTable, {
11402
+ data: userListInfo,
11403
+ handleChangeRowsPerPage: handleChangeRowsPerPage,
11404
+ handleChangePage: handleChangePage,
11405
+ page: page,
11406
+ rowsPerPage: rowsPerPage,
11407
+ handleActiveUser: handleActiveUser,
11408
+ handleSelectAllClick: handleSelectAllClick,
11409
+ selected: selected,
11410
+ handleSingleCheckBoxClick: handleSingleCheckBoxClick,
11411
+ orderBy: orderBy,
11412
+ order: order,
11413
+ onRequestSort: onRequestSort,
11414
+ onSearchHandler: onSearchHandler,
11415
+ onEditHandler: handleEditUserClick,
11416
+ disableRowCheckbox: deactivatedUsers,
11417
+ searchValue: searchValue,
11418
+ isILadmin: isILadmin,
11419
+ onPrimaryAdminHandler: onPrimaryAdminHandler,
11420
+ onResetPasswordHandler: onResetPasswordHandler,
11421
+ toggleInviteModal: toggleInviteModal
11422
+ }));
11349
11423
  return /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11350
11424
  component: "div",
11351
11425
  className: styles$6.UUIUserManagementList
@@ -11420,7 +11494,7 @@ var UserList = function UserList(_ref2) {
11420
11494
  alignItems: "center"
11421
11495
  })), /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11422
11496
  className: styles$6.tablewrapper
11423
- }, /*#__PURE__*/React__default.createElement(iuistyles.IUITabs, {
11497
+ }, hideSignupRequestsTab ? currentUsersPanel : /*#__PURE__*/React__default.createElement(iuistyles.IUITabs, {
11424
11498
  value: tabValue,
11425
11499
  customTabHandler: function customTabHandler(value) {
11426
11500
  return dispatch(updateTabValue(value));
@@ -11430,38 +11504,7 @@ var UserList = function UserList(_ref2) {
11430
11504
  label: /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, null, "Current users", ' ', /*#__PURE__*/React__default.createElement(TabLabelCount, {
11431
11505
  count: userListInfo.count
11432
11506
  }), ' '),
11433
- content: /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11434
- style: {
11435
- marginLeft: '-17px'
11436
- }
11437
- }, /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, {
11438
- component: "div",
11439
- className: styles$6.headingWrapper
11440
- }, /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
11441
- variant: "body2",
11442
- className: clsx(styles$6.description)
11443
- }, "Create new users, customize user permissions and manage user accounts")), /*#__PURE__*/React__default.createElement(StickyHeadTable, {
11444
- data: userListInfo,
11445
- handleChangeRowsPerPage: handleChangeRowsPerPage,
11446
- handleChangePage: handleChangePage,
11447
- page: page,
11448
- rowsPerPage: rowsPerPage,
11449
- handleActiveUser: handleActiveUser,
11450
- handleSelectAllClick: handleSelectAllClick,
11451
- selected: selected,
11452
- handleSingleCheckBoxClick: handleSingleCheckBoxClick,
11453
- orderBy: orderBy,
11454
- order: order,
11455
- onRequestSort: onRequestSort,
11456
- onSearchHandler: onSearchHandler,
11457
- onEditHandler: handleEditUserClick,
11458
- disableRowCheckbox: deactivatedUsers,
11459
- searchValue: searchValue,
11460
- isILadmin: isILadmin,
11461
- onPrimaryAdminHandler: onPrimaryAdminHandler,
11462
- onResetPasswordHandler: onResetPasswordHandler,
11463
- toggleInviteModal: toggleInviteModal
11464
- }))
11507
+ content: currentUsersPanel
11465
11508
  }, {
11466
11509
  label: /*#__PURE__*/React__default.createElement(iuistyles.IUIBox, null, "Sign-up requests", ' ', /*#__PURE__*/React__default.createElement(TabLabelCount, {
11467
11510
  count: signupRequestListInfo.count