@itilite/iui-user-management 1.4.94 → 1.4.96

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
@@ -358,8 +358,28 @@
358
358
  margin: 0 !important;
359
359
  }
360
360
  ._3MVKj {
361
- opacity: 0.6;
362
- filter: grayscale(1);
361
+ opacity: 0.65;
362
+ }
363
+
364
+ ._2_sgJ {
365
+ color: #cf2231;
366
+ border-radius: 4px;
367
+ padding: 4px;
368
+ border: 0.5px solid var(--color-red-200, #ffaba9);
369
+ background: var(--surface-critical, #fff1f0);
370
+ font-size: 10px;
371
+ font-weight: 500;
372
+ line-height: 12px; /* 120% */
373
+ letter-spacing: 0.1px;
374
+ display: inline-block;
375
+ white-space: nowrap;
376
+ vertical-align: middle;
377
+ }
378
+
379
+ ._3G7La._2_sgJ {
380
+ color: #9A6700;
381
+ border: 0.5px solid #EAC54F;
382
+ background: #FFFBE0;
363
383
  }
364
384
 
365
385
  ._2d_OH {
@@ -476,6 +496,10 @@
476
496
  margin-bottom: 0;
477
497
  }
478
498
 
499
+ ._19m4v {
500
+ margin-right: 6px;
501
+ }
502
+
479
503
  ._3l4HZ {
480
504
  font-size: 11px;
481
505
  font-weight: 500;
package/dist/index.js CHANGED
@@ -414,7 +414,7 @@ var userAddEditUrl = {
414
414
  return env.getPaymentUrl() + "/api/v1/card/default";
415
415
  },
416
416
  disablePaymentCard: function disablePaymentCard() {
417
- return env.getPaymentUrl() + "/api/v1/payment/card-management/card/status";
417
+ return env.getPaymentUrl() + "/api/v1/card/status";
418
418
  },
419
419
  verifyUserInfo: function verifyUserInfo(userId) {
420
420
  return "api/v1/onboarding/user-sign-up-info/" + userId + "?company_id=" + IUILocalStorageService.getCompanyId();
@@ -832,7 +832,7 @@ var UserRole = function UserRole(_ref) {
832
832
 
833
833
  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
834
 
835
- var classes = {"disabledCard":"_3MVKj","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","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"};
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"};
836
836
 
837
837
  var SHOW_LOADER = 'SHOW_LOADER';
838
838
  var STOP_LOADER = 'STOP_LOADER';
@@ -849,6 +849,27 @@ var SET_PAYMENT_DETAILS = 'SET_PAYMENT_DETAILS';
849
849
 
850
850
  var env$1 = utils.configs.env;
851
851
  var IUILocalStorageService$1 = utils.services.IUILocalStorageService;
852
+ var resolveMembershipName = function resolveMembershipName(membership) {
853
+ var _membership;
854
+ if (membership === void 0) {
855
+ membership = {};
856
+ }
857
+ if (((_membership = membership) === null || _membership === void 0 ? void 0 : _membership.membership_type) === 'rental_car') {
858
+ var _membership2, _membership3, _membership3$program_, _membership5, _membership6, _membership6$loyalty_;
859
+ if ((_membership2 = membership) !== null && _membership2 !== void 0 && _membership2.program_name && (_membership3 = membership) !== null && _membership3 !== void 0 && (_membership3$program_ = _membership3.program_name) !== null && _membership3$program_ !== void 0 && _membership3$program_.trim()) {
860
+ var _membership4, _membership4$program_;
861
+ return (_membership4 = membership) === null || _membership4 === void 0 ? void 0 : (_membership4$program_ = _membership4.program_name) === null || _membership4$program_ === void 0 ? void 0 : _membership4$program_.trim();
862
+ }
863
+ if ((_membership5 = membership) !== null && _membership5 !== void 0 && _membership5.loyalty_program_name && (_membership6 = membership) !== null && _membership6 !== void 0 && (_membership6$loyalty_ = _membership6.loyalty_program_name) !== null && _membership6$loyalty_ !== void 0 && _membership6$loyalty_.trim()) {
864
+ var _membership7, _membership7$loyalty_;
865
+ return (_membership7 = membership) === null || _membership7 === void 0 ? void 0 : (_membership7$loyalty_ = _membership7.loyalty_program_name) === null || _membership7$loyalty_ === void 0 ? void 0 : _membership7$loyalty_.trim();
866
+ } else {
867
+ return '';
868
+ }
869
+ } else {
870
+ return membership.name;
871
+ }
872
+ };
852
873
  var formatCreateUserPayload = function formatCreateUserPayload(payload) {
853
874
  var _payload$employeeInfo, _payload$employeeInfo2, _payload$employeeInfo3, _payload$employeeInfo4, _payload$employeeInfo5, _payload$employeeInfo6, _payload$employeeInfo7, _payload$employeeInfo8, _payload$employeeInfo9, _payload$employeeInfo10;
854
875
  var res = {
@@ -943,7 +964,7 @@ var formatCreateUserPayload = function formatCreateUserPayload(payload) {
943
964
  loyalty_program_id = _ref$loyalty_program_ === void 0 ? null : _ref$loyalty_program_;
944
965
  var res = {
945
966
  membership_type: membership.membership_type,
946
- name: membership.name,
967
+ name: resolveMembershipName(membership),
947
968
  number: membership.number,
948
969
  iata_code: iata_code,
949
970
  loyalty_program_id: loyalty_program_id
@@ -1131,7 +1152,7 @@ var formatUpdateUserPayload = function formatUpdateUserPayload(payload, inputCha
1131
1152
  loyalty_program_id = _ref2$loyalty_program === void 0 ? null : _ref2$loyalty_program;
1132
1153
  var res = {
1133
1154
  membership_type: membership.membership_type,
1134
- name: membership.name,
1155
+ name: resolveMembershipName(membership),
1135
1156
  number: membership.number,
1136
1157
  id: membership.id,
1137
1158
  iata_code: iata_code,
@@ -2792,13 +2813,18 @@ var CardsManagement = function CardsManagement(_ref) {
2792
2813
  });
2793
2814
  var cardsCount = (personalCards === null || personalCards === void 0 ? void 0 : personalCards.length) + (corporateCards === null || corporateCards === void 0 ? void 0 : corporateCards.length);
2794
2815
  var renderCard = function renderCard(card) {
2795
- var _card$metadata, _card$metadata2, _clsx, _card$card, _card$card2, _card$card3, _card$card4;
2796
- console.log('_paymentDetails2', card, cards);
2816
+ var _card$metadata, _clsx, _card$card, _card$card2, _card$card3, _card$card4;
2797
2817
  var isCompanyCard = (card === null || card === void 0 ? void 0 : card.category) === 'Company';
2798
2818
  var cardClass = getCardTypeClass(card === null || card === void 0 ? void 0 : card.category);
2799
2819
  var isDefaultCard = !!+(card === null || card === void 0 ? void 0 : (_card$metadata = card.metadata) === null || _card$metadata === void 0 ? void 0 : _card$metadata.default_card);
2800
- var isDisabled = (card === null || card === void 0 ? void 0 : (_card$metadata2 = card.metadata) === null || _card$metadata2 === void 0 ? void 0 : _card$metadata2.is_enabled) === '0';
2801
- var showMenuButton = cardsCount === 1 || cardsCount > 1 && !isDefaultCard;
2820
+ var isExpired = card.metadata.is_enabled === '2';
2821
+ var isDisabled = card.metadata.is_enabled === '0' || isExpired;
2822
+ var currentDate = new Date();
2823
+ var cardExpDate = new Date(parseInt(card.card.exp_year, 10), parseInt(card.card.exp_month, 10) - 1);
2824
+ var timeDiff = cardExpDate.getTime() - currentDate.getTime();
2825
+ var daysToExpire = Math.ceil(timeDiff / (1000 * 3600 * 24));
2826
+ var expiresSoon = daysToExpire <= 30 && !isExpired;
2827
+ var showMenuButton = !isExpired && (cardsCount === 1 || cardsCount > 1 && !isDefaultCard);
2802
2828
  return /*#__PURE__*/React__default.createElement("div", {
2803
2829
  key: card.id,
2804
2830
  className: clsx(classes.card, classes[cardClass], (_clsx = {}, _clsx[classes.disabledCard] = isDisabled, _clsx))
@@ -2808,7 +2834,13 @@ var CardsManagement = function CardsManagement(_ref) {
2808
2834
  className: classes.cardTitleSection
2809
2835
  }, /*#__PURE__*/React__default.createElement("h3", {
2810
2836
  className: classes.cardName
2811
- }, card === null || card === void 0 ? void 0 : card.alias), /*#__PURE__*/React__default.createElement("span", {
2837
+ }, /*#__PURE__*/React__default.createElement("span", {
2838
+ className: classes.cardAlias
2839
+ }, card === null || card === void 0 ? void 0 : card.alias), isExpired && /*#__PURE__*/React__default.createElement("span", {
2840
+ className: classes.expiredLabel
2841
+ }, "Expired"), expiresSoon && /*#__PURE__*/React__default.createElement("span", {
2842
+ className: clsx(classes.expiresoonLabel, classes.expiredLabel)
2843
+ }, "Expires Soon")), /*#__PURE__*/React__default.createElement("span", {
2812
2844
  className: classes.cardType
2813
2845
  }, getCardTypeLabel(card.category), isDefaultCard && /*#__PURE__*/React__default.createElement("span", null, ' (Default)'))), isCompanyCard ? /*#__PURE__*/React__default.createElement(LockIcon, {
2814
2846
  className: classes.lockIcon
@@ -3616,7 +3648,7 @@ var personalInfo = [{
3616
3648
  maxLength: 100,
3617
3649
  minLength: 0
3618
3650
  },
3619
- disableText: 'Please get in touch with your administrator to change this value.'
3651
+ disableText: 'A user’s email is their primary identifier and cannot be changed for security reasons. To update it, please deactivate the existing user and create a new one with the correct email address.'
3620
3652
  }, {
3621
3653
  id: 4,
3622
3654
  label: 'Phone number',
@@ -5670,14 +5702,37 @@ var AddMembershipButton = React.memo(function (_ref) {
5670
5702
  var IUIToastMessageService$5 = utils.services.IUIToastMessageService;
5671
5703
  var api$7 = utils.configs.api;
5672
5704
  var sixteenDigitNumber$1 = /^\d{16}$/;
5673
- var Membership = function Membership(_ref) {
5705
+ var resolveMembershipName$1 = function resolveMembershipName(membership, customName) {
5706
+ var _membership, _ref;
5707
+ if (membership === void 0) {
5708
+ membership = {};
5709
+ }
5710
+ if (customName === void 0) {
5711
+ customName = '';
5712
+ }
5713
+ if (((_membership = membership) === null || _membership === void 0 ? void 0 : _membership.membership_type) === 'rental_car') {
5714
+ var _membership2, _membership3, _membership3$program_, _membership5, _membership6, _membership6$loyalty_;
5715
+ if ((_membership2 = membership) !== null && _membership2 !== void 0 && _membership2.program_name && (_membership3 = membership) !== null && _membership3 !== void 0 && (_membership3$program_ = _membership3.program_name) !== null && _membership3$program_ !== void 0 && _membership3$program_.trim()) {
5716
+ var _membership4, _membership4$program_;
5717
+ return (_membership4 = membership) === null || _membership4 === void 0 ? void 0 : (_membership4$program_ = _membership4.program_name) === null || _membership4$program_ === void 0 ? void 0 : _membership4$program_.trim();
5718
+ }
5719
+ if ((_membership5 = membership) !== null && _membership5 !== void 0 && _membership5.loyalty_program_name && (_membership6 = membership) !== null && _membership6 !== void 0 && (_membership6$loyalty_ = _membership6.loyalty_program_name) !== null && _membership6$loyalty_ !== void 0 && _membership6$loyalty_.trim()) {
5720
+ var _membership7, _membership7$loyalty_;
5721
+ return (_membership7 = membership) === null || _membership7 === void 0 ? void 0 : (_membership7$loyalty_ = _membership7.loyalty_program_name) === null || _membership7$loyalty_ === void 0 ? void 0 : _membership7$loyalty_.trim();
5722
+ } else {
5723
+ return '';
5724
+ }
5725
+ }
5726
+ return (_ref = customName || '') === null || _ref === void 0 ? void 0 : _ref.trim();
5727
+ };
5728
+ var Membership = function Membership(_ref2) {
5674
5729
  var _clsx;
5675
- var _ref$membershipInfoIn = _ref.membershipInfoInput,
5676
- membershipInfoInput = _ref$membershipInfoIn === void 0 ? [] : _ref$membershipInfoIn,
5677
- _ref$setMembershipInf = _ref.setMembershipInfoInput,
5678
- setMembershipInfoInput = _ref$setMembershipInf === void 0 ? function () {} : _ref$setMembershipInf,
5679
- _ref$isProfile = _ref.isProfile,
5680
- isProfile = _ref$isProfile === void 0 ? false : _ref$isProfile;
5730
+ var _ref2$membershipInfoI = _ref2.membershipInfoInput,
5731
+ membershipInfoInput = _ref2$membershipInfoI === void 0 ? [] : _ref2$membershipInfoI,
5732
+ _ref2$setMembershipIn = _ref2.setMembershipInfoInput,
5733
+ setMembershipInfoInput = _ref2$setMembershipIn === void 0 ? function () {} : _ref2$setMembershipIn,
5734
+ _ref2$isProfile = _ref2.isProfile,
5735
+ isProfile = _ref2$isProfile === void 0 ? false : _ref2$isProfile;
5681
5736
  var _useParams = reactRouterDom.useParams(),
5682
5737
  editUserId = _useParams.userId;
5683
5738
  var _useSelector = reactRedux.useSelector(function (state) {
@@ -5880,22 +5935,24 @@ var Membership = function Membership(_ref) {
5880
5935
  };
5881
5936
  var handleSubmit = function handleSubmit() {
5882
5937
  try {
5883
- var _ref2, _ref3;
5884
5938
  if (isAAAloyaltySelected && !sixteenDigitNumber$1.test(membershipNumber)) {
5885
5939
  IUIToastMessageService$5.warningNotify('Enter 16-digit AAA membership ID');
5886
5940
  return Promise.resolve();
5887
5941
  }
5888
5942
  var url = "/api/v1/user-management/users/" + userID + "/membership";
5943
+ var resolvedMembershipName = resolveMembershipName$1(_extends({}, selectedMembershipChain, {
5944
+ membership_type: type
5945
+ }), membershipName);
5889
5946
  var payload = isEditing ? _extends({}, selectedMembershipChain, {
5890
5947
  number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5891
- name: (_ref2 = membershipName || '') === null || _ref2 === void 0 ? void 0 : _ref2.trim()
5948
+ name: resolvedMembershipName
5892
5949
  }) : {
5893
5950
  membership_type: type,
5894
5951
  number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5895
5952
  iata_code: null,
5896
5953
  user: userID,
5897
5954
  loyalty_program_id: selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.loyalty_program_id,
5898
- name: (_ref3 = membershipName || '') === null || _ref3 === void 0 ? void 0 : _ref3.trim()
5955
+ name: resolvedMembershipName
5899
5956
  };
5900
5957
  setIsUpdating(true);
5901
5958
  var _temp4 = _finallyRethrows(function () {
@@ -5946,7 +6003,7 @@ var Membership = function Membership(_ref) {
5946
6003
  var handleEdit = function handleEdit(mem, index, isOther) {
5947
6004
  setEditIndex(index);
5948
6005
  setSelectedMembershipChain(mem);
5949
- setMembershipName((mem === null || mem === void 0 ? void 0 : mem.name) || '');
6006
+ setMembershipName((mem === null || mem === void 0 ? void 0 : mem.name) || resolveMembershipName$1(mem, mem === null || mem === void 0 ? void 0 : mem.name));
5950
6007
  setMembershipNumber(mem === null || mem === void 0 ? void 0 : mem.number);
5951
6008
  setIsOtherMembership(isOther);
5952
6009
  var currentModalState = _extends({}, modalState);
@@ -10334,6 +10391,7 @@ var StickyHeadTable = function StickyHeadTable(props) {
10334
10391
  id: 'status',
10335
10392
  label: 'Status',
10336
10393
  minWidth: 160,
10394
+ sortable: true,
10337
10395
  cell: function cell(row) {
10338
10396
  return /*#__PURE__*/React__default.createElement(iuistyles.IUIFormGroup, null, /*#__PURE__*/React__default.createElement(iuistyles.IUITypography, {
10339
10397
  component: "div",
@@ -11173,7 +11231,7 @@ var UserList = function UserList(_ref2) {
11173
11231
  if (isTokenVerified === true) {
11174
11232
  var pageNum = page;
11175
11233
  var searchParam = searchValue.trim() !== '' ? '&search=' + searchValue : '';
11176
- var orderingParam = orderBy === '' ? '' : order === 'asc' ? '&ordering=' + orderBy : '&ordering=-' + orderBy;
11234
+ var orderingParam = orderBy === '' ? '' : orderBy === 'status' ? order === 'asc' ? '&ordering=is_active,-has_visited' : '&ordering=-is_active,-has_visited' : order === 'asc' ? '&ordering=' + orderBy : '&ordering=-' + orderBy;
11177
11235
  var url = userListUrl.getUser + '?length=' + rowsPerPage + '&page=' + pageNum + searchParam + orderingParam;
11178
11236
  if (isSearchingChange) {
11179
11237
  var delayDebounceFn = setTimeout(function () {