@itilite/iui-user-management 1.4.4998 → 1.4.7611

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,9 +1,8 @@
1
- import { IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIDivider, IUIGrid, IUITypography, IUIRadio, IUIButton, IUIModal, IUISearch, IUICircularProgress, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUICard, IUIBackdrop, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIIconButton, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUIDropdownButton, IUITabs } from '@itilite/iuistyles';
2
- import React, { useState, useEffect, memo, useRef, Fragment as Fragment$1 } from 'react';
1
+ import { IUIAsyncSelect, IUIBox, IUILabel, IUIFileUpload, IUICheckboxButton, IUIPhone, IUISelect, IUIDatePicker, IUIInput, IUIGrid, IUIDivider, IUITypography, IUIRadio, IUIButton, IUIModal, IUISearch, IUICircularProgress, IUIAccordion, IUIAccordionSummary, IUIAccordionDetails, IUICard, IUIBackdrop, IUIBreadCrumb, IUIDropzone, IUIStepper, IUIIconButton, IUIFormControlLabel, IUICheckBox, IUIPrimaryRadio, IUITable, IUISkeleton, IUIProfileBox, IUIFormGroup, IUIDropdownButton, IUITabs } from '@itilite/iuistyles';
2
+ import React, { useState, Fragment as Fragment$1, useEffect, memo, useRef } from 'react';
3
3
  import { configs, services, utilUrls } from '@itilite/utils';
4
4
  import axios from 'axios';
5
- import AddIcon$1 from '@material-ui/icons/Add';
6
- import DeleteIcon from '@material-ui/icons/Delete';
5
+ import { IconButton, Menu, MenuItem, Popper, Grow, Paper, ClickAwayListener, MenuList, Typography, Box } from '@material-ui/core';
7
6
  import { useDispatch, useSelector, Provider } from 'react-redux';
8
7
  import { combineReducers, createStore, applyMiddleware } from 'redux';
9
8
  import thunk from 'redux-thunk';
@@ -15,7 +14,6 @@ import Tooltip from '@material-ui/core/Tooltip';
15
14
  import Switch from '@material-ui/core/Switch';
16
15
  import MoreHorizIcon from '@material-ui/icons/MoreHoriz';
17
16
  import Button from '@material-ui/core/Button';
18
- import { Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, Typography, Box } from '@material-ui/core';
19
17
  import { useScrollPosition } from '@n8tb1t/use-scroll-position';
20
18
 
21
19
  function _arrayLikeToArray(r, a) {
@@ -186,17 +184,7 @@ function _finallyRethrows(body, finalizer) {
186
184
 
187
185
  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"};
188
186
 
189
- function r(e) {
190
- var t,
191
- f,
192
- n = "";
193
- 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);
194
- return n;
195
- }
196
- function clsx() {
197
- for (var e, t, f = 0, n = ""; f < arguments.length;) (e = arguments[f++]) && (t = r(e)) && (n && (n += " "), n += t);
198
- return n;
199
- }
187
+ 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}
200
188
 
201
189
  var GetInputType = React.forwardRef(function (props, ref) {
202
190
  var _p = props._p,
@@ -836,7 +824,9 @@ var UserRole = function UserRole(_ref) {
836
824
  }));
837
825
  };
838
826
 
839
- var styles$1 = {"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","defaultLabel":"_smjc4","defaultBtn":"_1_ArA","cursonPointer":"_1L115","sectionWrapper":"_VpUCK","margin":"_1Fs_D","minGridWidth":"_1hl-Z","firstRowMargin":"_1WZZj","firstChildMargin":"_IT_O_","paddingTop":"_Mhnl7","dividerColor":"_3ltFd"};
827
+ 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"};
828
+
829
+ var classes = {"sectionHeader":"_2d_OH","myCardsSection":"_3MNHj","companyCardsSection":"_34lN6","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"};
840
830
 
841
831
  var SHOW_LOADER = 'SHOW_LOADER';
842
832
  var STOP_LOADER = 'STOP_LOADER';
@@ -937,10 +927,17 @@ var formatCreateUserPayload = function formatCreateUserPayload(payload) {
937
927
  res.membership_info = payload.membershipInfoInput.filter(function (membership) {
938
928
  return !membership.isDeleted;
939
929
  }).map(function (membership) {
930
+ var _ref = membership || {},
931
+ _ref$iata_code = _ref.iata_code,
932
+ iata_code = _ref$iata_code === void 0 ? null : _ref$iata_code,
933
+ _ref$loyalty_program_ = _ref.loyalty_program_id,
934
+ loyalty_program_id = _ref$loyalty_program_ === void 0 ? null : _ref$loyalty_program_;
940
935
  var res = {
941
936
  membership_type: membership.membership_type,
942
937
  name: membership.name,
943
- number: membership.number
938
+ number: membership.number,
939
+ iata_code: iata_code,
940
+ loyalty_program_id: loyalty_program_id
944
941
  };
945
942
  return res;
946
943
  });
@@ -1118,11 +1115,18 @@ var formatUpdateUserPayload = function formatUpdateUserPayload(payload, inputCha
1118
1115
  res.fields.membership_info = payload.membershipInfoInput.filter(function (membership) {
1119
1116
  return !!membership.isEditMode;
1120
1117
  }).map(function (membership) {
1118
+ var _ref2 = membership || {},
1119
+ _ref2$iata_code = _ref2.iata_code,
1120
+ iata_code = _ref2$iata_code === void 0 ? null : _ref2$iata_code,
1121
+ _ref2$loyalty_program = _ref2.loyalty_program_id,
1122
+ loyalty_program_id = _ref2$loyalty_program === void 0 ? null : _ref2$loyalty_program;
1121
1123
  var res = {
1122
1124
  membership_type: membership.membership_type,
1123
1125
  name: membership.name,
1124
1126
  number: membership.number,
1125
- id: membership.id
1127
+ id: membership.id,
1128
+ iata_code: iata_code,
1129
+ loyalty_program_id: loyalty_program_id
1126
1130
  };
1127
1131
  return res;
1128
1132
  }).concat(payload.membershipInfoInput.filter(function (membership) {
@@ -2230,84 +2234,194 @@ var editCustomFieldLabel = function editCustomFieldLabel(payload) {
2230
2234
 
2231
2235
  var IUILocalStorageService$4 = services.IUILocalStorageService;
2232
2236
  var env$3 = configs.env;
2233
- var CreditCard = function CreditCard(_ref) {
2234
- var cardId = _ref.cardId,
2235
- lastDigit = _ref.lastDigit,
2236
- expMonth = _ref.expMonth,
2237
- expYear = _ref.expYear,
2238
- cardBrand = _ref.cardBrand,
2239
- _ref$isDefaultCard = _ref.isDefaultCard,
2240
- isDefaultCard = _ref$isDefaultCard === void 0 ? false : _ref$isDefaultCard,
2241
- pg = _ref.pg;
2237
+ var CardsManagement = function CardsManagement(_ref) {
2238
+ var _pg$gateway;
2239
+ var _ref$paymentDetails = _ref.paymentDetails,
2240
+ paymentDetails = _ref$paymentDetails === void 0 ? {} : _ref$paymentDetails;
2242
2241
  var dispatch = useDispatch();
2243
- var handleCardDelete = function handleCardDelete() {
2244
- dispatch(deletePaymentCard({
2245
- pmId: cardId,
2246
- vendorId: pg.vendor_id
2247
- }));
2248
- };
2249
- var setDefaultCard = function setDefaultCard() {
2242
+ var pg = paymentDetails.pg,
2243
+ _paymentDetails$cards = paymentDetails.cards,
2244
+ cards = _paymentDetails$cards === void 0 ? null : _paymentDetails$cards;
2245
+ console.log(paymentDetails, 'paymentDetails3');
2246
+ var _useState = useState(null),
2247
+ anchorEl = _useState[0],
2248
+ setAnchorEl = _useState[1];
2249
+ var _useState2 = useState(null),
2250
+ selectedCard = _useState2[0],
2251
+ setSelectedCard = _useState2[1];
2252
+ var handleMenuClick = function handleMenuClick(event, card) {
2253
+ setAnchorEl(event.currentTarget);
2254
+ setSelectedCard(card);
2255
+ };
2256
+ var handleMenuClose = function handleMenuClose() {
2257
+ setAnchorEl(null);
2258
+ setSelectedCard(null);
2259
+ };
2260
+ var handleMarkAsDefault = function handleMarkAsDefault() {
2261
+ console.log('Mark as default:', selectedCard);
2262
+ if (!pg || !selectedCard) return;
2250
2263
  dispatch(setDefaultPaymentCard({
2251
2264
  user_id: +pg.user_id,
2252
- method_id: cardId,
2265
+ method_id: selectedCard.id,
2253
2266
  vendor_id: +pg.vendor_id,
2254
2267
  app_type: 1
2255
2268
  }));
2269
+ handleMenuClose();
2256
2270
  };
2257
- return /*#__PURE__*/React.createElement("div", {
2258
- className: styles$1.card
2259
- }, /*#__PURE__*/React.createElement("div", {
2260
- className: styles$1.cardLabel
2261
- }, isDefaultCard ? /*#__PURE__*/React.createElement("span", {
2262
- className: styles$1.defaultLabel
2263
- }, "Default Card") : /*#__PURE__*/React.createElement("button", {
2264
- type: "button",
2265
- onClick: setDefaultCard,
2266
- className: styles$1.defaultBtn
2267
- }, "Make This Default")), !isDefaultCard && /*#__PURE__*/React.createElement("div", {
2268
- className: styles$1.cardDeleteBtn
2269
- }, /*#__PURE__*/React.createElement("button", {
2270
- type: "button",
2271
- onClick: handleCardDelete
2272
- }, /*#__PURE__*/React.createElement(DeleteIcon, {
2273
- width: "10",
2274
- height: "10"
2275
- }))), /*#__PURE__*/React.createElement("div", {
2276
- className: styles$1.cardNumber
2277
- }, /*#__PURE__*/React.createElement("span", {
2278
- className: styles$1.cardDigit
2279
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2280
- className: styles$1.cardDigit
2281
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2282
- className: styles$1.cardDigit
2283
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2284
- className: styles$1.cardDigit
2285
- }, lastDigit)), /*#__PURE__*/React.createElement("div", {
2286
- className: styles$1.expiryDate
2287
- }, expMonth, " / ", expYear), /*#__PURE__*/React.createElement("div", {
2288
- className: clsx(styles$1.cardImage, styles$1[cardBrand])
2289
- }));
2290
- };
2291
- var AddCard = function AddCard(_ref2) {
2292
- var pg = _ref2.pg;
2293
- var _url = env$3.getPaymentUrl() + ("/api/v1/auth/" + IUILocalStorageService$4.getAccessToken() + "/1/" + pg.entity_id + "/0/" + pg.vendor_id + "/1");
2294
- var handleAddCard = function handleAddCard() {
2295
- window.location.assign(_url);
2271
+ var handleDeleteCard = function handleDeleteCard() {
2272
+ dispatch(deletePaymentCard({
2273
+ pmId: selectedCard.id,
2274
+ vendorId: pg.vendor_id
2275
+ }));
2276
+ handleMenuClose();
2277
+ };
2278
+ var getBrandLogo = function getBrandLogo(brand) {
2279
+ var logos = {
2280
+ visa: 'https://upload.wikimedia.org/wikipedia/commons/0/04/Visa.svg',
2281
+ mastercard: 'https://upload.wikimedia.org/wikipedia/commons/2/2a/Mastercard-logo.svg',
2282
+ amex: 'https://upload.wikimedia.org/wikipedia/commons/3/30/American_Express_logo.svg'
2283
+ };
2284
+ return logos[brand.toLowerCase()] || '';
2285
+ };
2286
+ var getCardTypeClass = function getCardTypeClass(category) {
2287
+ return category === 'Corporate' ? 'corporate' : category === 'Company' ? 'company' : 'personal';
2288
+ };
2289
+ var getCardTypeLabel = function getCardTypeLabel(category) {
2290
+ return category === 'Corporate' ? 'CORPORATE' : category === 'Company' ? 'COMPANY' : 'PERSONAL';
2291
+ };
2292
+ var MoreIcon = function MoreIcon(_ref2) {
2293
+ var _ref2$color = _ref2.color,
2294
+ color = _ref2$color === void 0 ? '#3D89FF' : _ref2$color,
2295
+ className = _ref2.className;
2296
+ return /*#__PURE__*/React.createElement("svg", {
2297
+ width: "16",
2298
+ height: "16",
2299
+ viewBox: "0 0 16 16",
2300
+ fill: "none",
2301
+ className: className
2302
+ }, /*#__PURE__*/React.createElement("path", {
2303
+ d: "M0.8125 8.00439C0.8125 8.4188 0.97712 8.81622 1.27015 9.10925C1.56317 9.40227 1.9606 9.56689 2.375 9.56689C2.7894 9.56689 3.18683 9.40227 3.47985 9.10925C3.77288 8.81622 3.9375 8.4188 3.9375 8.00439C3.9375 7.58999 3.77288 7.19257 3.47985 6.89954C3.18683 6.60651 2.7894 6.44189 2.375 6.44189C1.9606 6.44189 1.56317 6.60651 1.27015 6.89954C0.97712 7.19257 0.8125 7.58999 0.8125 8.00439Z",
2304
+ stroke: color,
2305
+ strokeLinecap: "round",
2306
+ strokeLinejoin: "round"
2307
+ }), /*#__PURE__*/React.createElement("path", {
2308
+ d: "M6.4375 8.00439C6.4375 8.20958 6.47792 8.41277 6.55644 8.60234C6.63496 8.79191 6.75005 8.96416 6.89515 9.10925C7.04024 9.25434 7.21249 9.36943 7.40206 9.44796C7.59163 9.52648 7.79481 9.56689 8 9.56689C8.20519 9.56689 8.40837 9.52648 8.59794 9.44796C8.78751 9.36943 8.95976 9.25434 9.10485 9.10925C9.24995 8.96416 9.36504 8.79191 9.44356 8.60234C9.52208 8.41277 9.5625 8.20958 9.5625 8.00439C9.5625 7.7992 9.52208 7.59602 9.44356 7.40645C9.36504 7.21688 9.24995 7.04463 9.10485 6.89954C8.95976 6.75445 8.78751 6.63936 8.59794 6.56083C8.40837 6.48231 8.20519 6.44189 8 6.44189C7.79481 6.44189 7.59163 6.48231 7.40206 6.56083C7.21249 6.63936 7.04024 6.75445 6.89515 6.89954C6.75005 7.04463 6.63496 7.21688 6.55644 7.40645C6.47792 7.59602 6.4375 7.7992 6.4375 8.00439Z",
2309
+ stroke: color,
2310
+ strokeLinecap: "round",
2311
+ strokeLinejoin: "round"
2312
+ }), /*#__PURE__*/React.createElement("path", {
2313
+ d: "M12.0625 8.00439C12.0625 8.4188 12.2271 8.81622 12.5201 9.10925C12.8132 9.40227 13.2106 9.56689 13.625 9.56689C14.0394 9.56689 14.4368 9.40227 14.7299 9.10925C15.0229 8.81622 15.1875 8.4188 15.1875 8.00439C15.1875 7.58999 15.0229 7.19257 14.7299 6.89954C14.4368 6.60651 14.0394 6.44189 13.625 6.44189C13.2106 6.44189 12.8132 6.60651 12.5201 6.89954C12.2271 7.19257 12.0625 7.58999 12.0625 8.00439Z",
2314
+ stroke: color,
2315
+ strokeLinecap: "round",
2316
+ strokeLinejoin: "round"
2317
+ }));
2318
+ };
2319
+ var LockIcon = function LockIcon(_ref3) {
2320
+ return /*#__PURE__*/React.createElement("svg", {
2321
+ xmlns: "http://www.w3.org/2000/svg",
2322
+ width: "16",
2323
+ height: "16",
2324
+ viewBox: "0 0 16 16",
2325
+ fill: "none"
2326
+ }, /*#__PURE__*/React.createElement("path", {
2327
+ d: "M7.83562 1.50971L8 1.50439C9.32548 1.50439 10.41 2.53593 10.4947 3.84002L10.5 4.00439V5.00439H11.5C12.3284 5.00439 13 5.67597 13 6.50439V12.5044C13 13.3328 12.3284 14.0044 11.5 14.0044H4.5C3.67157 14.0044 3 13.3328 3 12.5044V6.50439C3 5.67597 3.67157 5.00439 4.5 5.00439H5.5V4.00439C5.5 2.67891 6.53154 1.59436 7.83562 1.50971ZM11.5 6.00439H4.5C4.22386 6.00439 4 6.22825 4 6.50439V12.5044C4 12.7805 4.22386 13.0044 4.5 13.0044H11.5C11.7761 13.0044 12 12.7805 12 12.5044V6.50439C12 6.22825 11.7761 6.00439 11.5 6.00439ZM8 8.50439C8.55228 8.50439 9 8.95211 9 9.50439C9 10.0567 8.55228 10.5044 8 10.5044C7.44772 10.5044 7 10.0567 7 9.50439C7 8.95211 7.44772 8.50439 8 8.50439ZM8.14446 2.51126L8 2.50439C7.2203 2.50439 6.57955 3.09928 6.50687 3.85993L6.5 4.00439V5.00439H9.5V4.00439C9.5 3.2247 8.90511 2.58395 8.14446 2.51126Z",
2328
+ fill: "#2EA363"
2329
+ }));
2330
+ };
2331
+ var renderCard = function renderCard(card) {
2332
+ var isCompanyCard = card.category === 'Company';
2333
+ var cardClass = getCardTypeClass(card.category);
2334
+ var isDefaultCard = !!+card.metadata.default_card;
2335
+ return /*#__PURE__*/React.createElement("div", {
2336
+ key: card.id,
2337
+ className: clsx(classes.card, classes[cardClass])
2338
+ }, /*#__PURE__*/React.createElement("div", {
2339
+ className: classes.cardHeader
2340
+ }, /*#__PURE__*/React.createElement("div", {
2341
+ className: classes.cardTitleSection
2342
+ }, /*#__PURE__*/React.createElement("h3", {
2343
+ className: classes.cardName
2344
+ }, card.name), /*#__PURE__*/React.createElement("span", {
2345
+ className: classes.cardType
2346
+ }, getCardTypeLabel(card.category))), isCompanyCard ? /*#__PURE__*/React.createElement(LockIcon, {
2347
+ className: classes.lockIcon
2348
+ }) : /*#__PURE__*/React.createElement(IconButton, {
2349
+ size: "small",
2350
+ onClick: function onClick(e) {
2351
+ return handleMenuClick(e, card);
2352
+ },
2353
+ className: classes.menuButton
2354
+ }, /*#__PURE__*/React.createElement(MoreIcon, {
2355
+ className: clsx(classes.moreIcon, classes[cardClass]),
2356
+ color: isCompanyCard ? '#10B981' : '#3D89FF'
2357
+ }))), /*#__PURE__*/React.createElement("div", {
2358
+ className: classes.cardDetails
2359
+ }, /*#__PURE__*/React.createElement("div", {
2360
+ className: classes.cardNumber
2361
+ }, /*#__PURE__*/React.createElement("span", {
2362
+ className: classes.cardMaskedNumber
2363
+ }, "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022"), ' ', card.card.last4), /*#__PURE__*/React.createElement("div", {
2364
+ className: classes.cardExpiry
2365
+ }, "Expiry date ", card.card.exp_month, "/", String(card.card.exp_year).slice(-2)), /*#__PURE__*/React.createElement("div", {
2366
+ className: classes.cardCvv
2367
+ }, "CVV \u2022\u2022\u2022")), /*#__PURE__*/React.createElement("div", {
2368
+ className: classes.cardFooter
2369
+ }, isDefaultCard ? /*#__PURE__*/React.createElement("div", {
2370
+ className: styles$1.defaultLabel
2371
+ }, "Default Card") : /*#__PURE__*/React.createElement("div", null), /*#__PURE__*/React.createElement("img", {
2372
+ src: getBrandLogo(card.card.brand),
2373
+ alt: card.card.brand,
2374
+ className: classes.brandLogo
2375
+ })));
2296
2376
  };
2377
+ var personalCards = cards.filter(function (card) {
2378
+ return card.category === 'Personal';
2379
+ });
2380
+ var corporateCards = cards.filter(function (card) {
2381
+ return card.category === 'Corporate';
2382
+ });
2383
+ var companyCards = cards.filter(function (card) {
2384
+ return card.category === 'Company';
2385
+ });
2386
+ var _url = env$3.getPaymentUrl() + ("/api/v1/auth/" + IUILocalStorageService$4.getAccessToken() + "/1/" + pg.entity_id + "/0/" + pg.vendor_id + "/1");
2297
2387
  return /*#__PURE__*/React.createElement("div", {
2298
- className: clsx(styles$1.card, styles$1.cursonPointer),
2299
- onClick: handleAddCard
2300
- }, /*#__PURE__*/React.createElement("div", {
2301
- className: styles$1.addCard
2302
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(AddIcon$1, null)), /*#__PURE__*/React.createElement("div", null, "Add New Card")));
2303
- };
2304
- var PaymentCards = function PaymentCards(_ref3) {
2305
- var _paymentDetails$pg, _paymentDetails$pg2;
2306
- var paymentDetails = _ref3.paymentDetails;
2307
- if (!paymentDetails || Object.keys(paymentDetails).length === 0 || (!paymentDetails.cards || paymentDetails.cards.length === 0) && ((paymentDetails === null || paymentDetails === void 0 ? void 0 : (_paymentDetails$pg = paymentDetails.pg) === null || _paymentDetails$pg === void 0 ? void 0 : _paymentDetails$pg.gateway.toLowerCase()) !== 'stripe' || (paymentDetails === null || paymentDetails === void 0 ? void 0 : (_paymentDetails$pg2 = paymentDetails.pg) === null || _paymentDetails$pg2 === void 0 ? void 0 : _paymentDetails$pg2.save_card_enable) !== 1)) {
2308
- return /*#__PURE__*/React.createElement(React.Fragment, null);
2309
- }
2310
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIDivider, {
2388
+ style: {
2389
+ marginBottom: -20
2390
+ }
2391
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2392
+ container: true,
2393
+ className: clsx(styles$1.sectionWrapper)
2394
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2395
+ item: true,
2396
+ sm: 12,
2397
+ md: 4
2398
+ }, /*#__PURE__*/React.createElement(IUILabel, {
2399
+ label: "My cards",
2400
+ headerType: true,
2401
+ description: "These are personal & company issued cards owned by you."
2402
+ })), /*#__PURE__*/React.createElement(IUIGrid, {
2403
+ item: true,
2404
+ sm: 12,
2405
+ md: 8,
2406
+ lg: 8,
2407
+ xl: 6
2408
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2409
+ container: true,
2410
+ className: styles$1.formFieldsWrapper
2411
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
2412
+ className: classes.cardsGrid
2413
+ }, personalCards.map(function (card) {
2414
+ return renderCard(card);
2415
+ }), corporateCards.map(function (card) {
2416
+ return renderCard(card);
2417
+ })), (!cards || (cards === null || cards === void 0 ? void 0 : cards.length) < 10) && (pg === null || pg === void 0 ? void 0 : (_pg$gateway = pg.gateway) === null || _pg$gateway === void 0 ? void 0 : _pg$gateway.toLowerCase()) === 'stripe' && (pg === null || pg === void 0 ? void 0 : pg.save_card_enable) === 1 && /*#__PURE__*/React.createElement("button", {
2418
+ className: classes.addCardButton,
2419
+ onClick: function onClick() {
2420
+ return window.location.assign(_url);
2421
+ }
2422
+ }, /*#__PURE__*/React.createElement("span", {
2423
+ className: classes.plusIcon
2424
+ }, "+"), " Add card test")))))), (companyCards === null || companyCards === void 0 ? void 0 : companyCards.length) !== 0 && /*#__PURE__*/React.createElement(Fragment$1, null, /*#__PURE__*/React.createElement(IUIDivider, {
2311
2425
  className: styles$1.dividerColor
2312
2426
  }), /*#__PURE__*/React.createElement(IUIGrid, {
2313
2427
  container: true,
@@ -2317,9 +2431,9 @@ var PaymentCards = function PaymentCards(_ref3) {
2317
2431
  sm: 12,
2318
2432
  md: 4
2319
2433
  }, /*#__PURE__*/React.createElement(IUILabel, {
2320
- label: "Card Details",
2321
- headerType: true,
2322
- description: ""
2434
+ label: "Company cards",
2435
+ description: "These are the centralized cards owned by your company.",
2436
+ headerType: true
2323
2437
  })), /*#__PURE__*/React.createElement(IUIGrid, {
2324
2438
  item: true,
2325
2439
  sm: 12,
@@ -2329,20 +2443,44 @@ var PaymentCards = function PaymentCards(_ref3) {
2329
2443
  }, /*#__PURE__*/React.createElement(IUIGrid, {
2330
2444
  container: true,
2331
2445
  className: styles$1.formFieldsWrapper
2332
- }, /*#__PURE__*/React.createElement(React.Fragment, null, paymentDetails.cards && paymentDetails.cards.map(function (card) {
2333
- return /*#__PURE__*/React.createElement(CreditCard, {
2334
- key: card.id,
2335
- cardId: card.id,
2336
- lastDigit: card.card.last4,
2337
- expMonth: card.card.exp_month,
2338
- expYear: card.card.exp_year,
2339
- cardBrand: card.card.brand,
2340
- isDefaultCard: !!+card.metadata.default_card,
2341
- pg: paymentDetails.pg
2342
- });
2343
- }), (!paymentDetails.cards || paymentDetails.cards.length < 10) && paymentDetails.pg.gateway.toLowerCase() === 'stripe' && paymentDetails.pg.save_card_enable === 1 && /*#__PURE__*/React.createElement(AddCard, {
2344
- pg: paymentDetails.pg
2345
- }))))));
2446
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2447
+ className: classes.cardsGrid
2448
+ }, companyCards.map(function (card) {
2449
+ return renderCard(card);
2450
+ }))))))), /*#__PURE__*/React.createElement(Menu, {
2451
+ anchorEl: anchorEl,
2452
+ open: Boolean(anchorEl),
2453
+ onClose: handleMenuClose,
2454
+ anchorOrigin: {
2455
+ vertical: 'top',
2456
+ horizontal: 'right'
2457
+ },
2458
+ transformOrigin: {
2459
+ vertical: 'top',
2460
+ horizontal: 'right'
2461
+ }
2462
+ }, /*#__PURE__*/React.createElement(MenuItem, {
2463
+ onClick: handleMarkAsDefault
2464
+ }, "Mark as default"), /*#__PURE__*/React.createElement(MenuItem, {
2465
+ onClick: handleDeleteCard,
2466
+ style: {
2467
+ color: '#ff4444'
2468
+ }
2469
+ }, "Delete card")));
2470
+ };
2471
+
2472
+ var PaymentCards = function PaymentCards(_ref) {
2473
+ var _paymentDetails$pg, _paymentDetails$pg2;
2474
+ var paymentDetails = _ref.paymentDetails;
2475
+ if (!paymentDetails || Object.keys(paymentDetails).length === 0 || (!paymentDetails.cards || paymentDetails.cards.length === 0) && ((paymentDetails === null || paymentDetails === void 0 ? void 0 : (_paymentDetails$pg = paymentDetails.pg) === null || _paymentDetails$pg === void 0 ? void 0 : _paymentDetails$pg.gateway.toLowerCase()) !== 'stripe' || (paymentDetails === null || paymentDetails === void 0 ? void 0 : (_paymentDetails$pg2 = paymentDetails.pg) === null || _paymentDetails$pg2 === void 0 ? void 0 : _paymentDetails$pg2.save_card_enable) !== 1)) {
2476
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
2477
+ }
2478
+ console.log('paymentDetails2', paymentDetails);
2479
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIDivider, {
2480
+ className: styles$1.dividerColor
2481
+ }), /*#__PURE__*/React.createElement(CardsManagement, {
2482
+ paymentDetails: paymentDetails
2483
+ }));
2346
2484
  };
2347
2485
 
2348
2486
  function AddIcon(props) {
@@ -2711,7 +2849,7 @@ var TravelExpenseFields = function TravelExpenseFields(props) {
2711
2849
  isError: !!errMsg[i],
2712
2850
  placeholder: "Example label - \u201CManager\u201D"
2713
2851
  }));
2714
- })))), type === 'travel' && isProfile && paymentDetails && /*#__PURE__*/React.createElement(PaymentCards, {
2852
+ })))), type === 'travel' && paymentDetails && /*#__PURE__*/React.createElement(PaymentCards, {
2715
2853
  paymentDetails: paymentDetails
2716
2854
  }));
2717
2855
  };
@@ -4504,6 +4642,7 @@ var ChevronNext = function ChevronNext(_ref) {
4504
4642
  }));
4505
4643
  };
4506
4644
 
4645
+ var sixteenDigitNumber = /^\d{16}$/;
4507
4646
  var MembershipForm = function MembershipForm(_ref) {
4508
4647
  var selectedMembershipChain = _ref.selectedMembershipChain,
4509
4648
  isOtherMembership = _ref.isOtherMembership,
@@ -4512,7 +4651,9 @@ var MembershipForm = function MembershipForm(_ref) {
4512
4651
  setMembershipName = _ref.setMembershipName,
4513
4652
  setMembershipNumber = _ref.setMembershipNumber,
4514
4653
  type = _ref.type,
4515
- isEdit = _ref.isEdit;
4654
+ isEdit = _ref.isEdit,
4655
+ _ref$isAAAloyaltySele = _ref.isAAAloyaltySelected,
4656
+ isAAAloyaltySelected = _ref$isAAAloyaltySele === void 0 ? false : _ref$isAAAloyaltySele;
4516
4657
  var FallbackIcon = function FallbackIcon() {
4517
4658
  var url = '';
4518
4659
  if (type === 'flight') {
@@ -4555,7 +4696,7 @@ var MembershipForm = function MembershipForm(_ref) {
4555
4696
  },
4556
4697
  iconComponent: null,
4557
4698
  style: {
4558
- width: '50%',
4699
+ width: '100%',
4559
4700
  paddingLeft: 0,
4560
4701
  borderRadius: 6
4561
4702
  }
@@ -4577,7 +4718,7 @@ var MembershipForm = function MembershipForm(_ref) {
4577
4718
  label: "Membership number",
4578
4719
  required: true
4579
4720
  }), /*#__PURE__*/React.createElement(IUISearch, {
4580
- placeholder: "e.g. ABCD1234",
4721
+ placeholder: isAAAloyaltySelected ? 'Enter 16-digit AAA membership ID' : 'e.g. ABCD1234',
4581
4722
  value: membershipNumber,
4582
4723
  onChangeHandler: function onChangeHandler(e) {
4583
4724
  var inputValue = e.target.value;
@@ -4587,11 +4728,16 @@ var MembershipForm = function MembershipForm(_ref) {
4587
4728
  },
4588
4729
  iconComponent: null,
4589
4730
  style: {
4590
- width: '50%',
4731
+ width: '100%',
4591
4732
  paddingLeft: 0,
4592
4733
  borderRadius: 6
4593
4734
  }
4594
- }));
4735
+ }), isAAAloyaltySelected && membershipNumber && !sixteenDigitNumber.test(membershipNumber) && /*#__PURE__*/React.createElement("div", {
4736
+ style: {
4737
+ color: '#cf2231',
4738
+ marginTop: 5
4739
+ }
4740
+ }, "Enter a valid 16-digit AAA membership ID"));
4595
4741
  };
4596
4742
 
4597
4743
  var TravelModeIcon = function TravelModeIcon(_ref) {
@@ -4757,6 +4903,43 @@ var LoyaltyPrograms = function LoyaltyPrograms(_ref) {
4757
4903
  }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Loader, null))));
4758
4904
  };
4759
4905
 
4906
+ var EditIcon = function EditIcon() {
4907
+ return /*#__PURE__*/React.createElement("svg", {
4908
+ width: "16",
4909
+ height: "16",
4910
+ viewBox: "0 0 16 16",
4911
+ fill: "none",
4912
+ xmlns: "http://www.w3.org/2000/svg"
4913
+ }, /*#__PURE__*/React.createElement("g", {
4914
+ clipPath: "url(#clip0_13010_74651)"
4915
+ }, /*#__PURE__*/React.createElement("path", {
4916
+ d: "M10.7197 1.72376C11.7029 0.740515 13.2971 0.740516 14.2803 1.72377C15.2636 2.70701 15.2636 4.30118 14.2803 5.28443L5.14645 14.4183C4.77137 14.7934 4.26267 15.0041 3.73223 15.0041H2C1.44772 15.0041 1 14.5564 1 14.0041V12.2719C1 11.7414 1.21071 11.2327 1.58579 10.8576L10.7197 1.72376ZM13.2197 2.78443C12.8222 2.38696 12.1778 2.38696 11.7803 2.78443L11.0607 3.5041L12.5 4.94344L13.2197 4.22376C13.6171 3.8263 13.6171 3.18189 13.2197 2.78443ZM11.4393 6.0041L10 4.56476L2.64645 11.9183C2.55268 12.0121 2.5 12.1393 2.5 12.2719V13.5041H3.73223C3.86484 13.5041 3.99202 13.4514 4.08579 13.3576L11.4393 6.0041Z",
4917
+ fill: "#EC5D25"
4918
+ })), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
4919
+ id: "clip0_13010_74651"
4920
+ }, /*#__PURE__*/React.createElement("rect", {
4921
+ width: "16",
4922
+ height: "16",
4923
+ fill: "white",
4924
+ transform: "translate(0 0.00390625)"
4925
+ }))));
4926
+ };
4927
+
4928
+ var DeleteIcon = function DeleteIcon() {
4929
+ return /*#__PURE__*/React.createElement("svg", {
4930
+ width: "16",
4931
+ height: "16",
4932
+ viewBox: "0 0 16 16",
4933
+ fill: "none",
4934
+ xmlns: "http://www.w3.org/2000/svg"
4935
+ }, /*#__PURE__*/React.createElement("path", {
4936
+ fillRule: "evenodd",
4937
+ clipRule: "evenodd",
4938
+ d: "M7.33333 2.33716C7.14924 2.33716 7 2.4864 7 2.67049V3.33716H9V2.67049C9 2.4864 8.85076 2.33716 8.66667 2.33716H7.33333ZM10 3.33716V2.67049C10 1.93411 9.40305 1.33716 8.66667 1.33716H7.33333C6.59695 1.33716 6 1.93411 6 2.67049V3.33716H2.5C2.22386 3.33716 2 3.56102 2 3.83716C2 4.1133 2.22386 4.33716 2.5 4.33716H3.03122L3.57716 12.7993C3.64506 13.8516 4.51843 14.6705 5.57301 14.6705H10.427C11.4816 14.6705 12.3549 13.8516 12.4228 12.7993L12.9688 4.33716H13.5C13.7761 4.33716 14 4.1133 14 3.83716C14 3.56102 13.7761 3.33716 13.5 3.33716H10ZM11.9667 4.33716H4.0333L4.57509 12.7349C4.60903 13.2611 5.04572 13.6705 5.57301 13.6705H10.427C10.9543 13.6705 11.391 13.2611 11.4249 12.7349L11.9667 4.33716ZM6.5 6.00383C6.77614 6.00383 7 6.22768 7 6.50383V11.5038C7 11.78 6.77614 12.0038 6.5 12.0038C6.22386 12.0038 6 11.78 6 11.5038V6.50383C6 6.22768 6.22386 6.00383 6.5 6.00383ZM9.5 6.00383C9.77614 6.00383 10 6.22768 10 6.50383V11.5038C10 11.78 9.77614 12.0038 9.5 12.0038C9.22386 12.0038 9 11.78 9 11.5038V6.50383C9 6.22768 9.22386 6.00383 9.5 6.00383Z",
4939
+ fill: "#CF2231"
4940
+ }));
4941
+ };
4942
+
4760
4943
  var _excluded = ["ind"];
4761
4944
  var IUIToastMessageService$4 = services.IUIToastMessageService;
4762
4945
  var api$6 = configs.api;
@@ -4767,7 +4950,9 @@ var SavedMemberships = function SavedMemberships(_ref) {
4767
4950
  _ref$updateList = _ref.updateList,
4768
4951
  updateList = _ref$updateList === void 0 ? function () {} : _ref$updateList,
4769
4952
  _ref$handleEdit = _ref.handleEdit,
4770
- handleEdit = _ref$handleEdit === void 0 ? function () {} : _ref$handleEdit;
4953
+ handleEdit = _ref$handleEdit === void 0 ? function () {} : _ref$handleEdit,
4954
+ _ref$isProfile = _ref.isProfile,
4955
+ isProfile = _ref$isProfile === void 0 ? false : _ref$isProfile;
4771
4956
  var _useState = useState(false),
4772
4957
  open = _useState[0],
4773
4958
  setOpen = _useState[1];
@@ -4780,42 +4965,10 @@ var SavedMemberships = function SavedMemberships(_ref) {
4780
4965
  var _useSelector = useSelector(function (state) {
4781
4966
  return state.common;
4782
4967
  }),
4783
- userID = _useSelector.id;
4784
- var DeleteIcon = function DeleteIcon() {
4785
- return /*#__PURE__*/React.createElement("svg", {
4786
- width: "16",
4787
- height: "16",
4788
- viewBox: "0 0 16 16",
4789
- fill: "none",
4790
- xmlns: "http://www.w3.org/2000/svg"
4791
- }, /*#__PURE__*/React.createElement("path", {
4792
- fillRule: "evenodd",
4793
- clipRule: "evenodd",
4794
- d: "M7.33333 2.33716C7.14924 2.33716 7 2.4864 7 2.67049V3.33716H9V2.67049C9 2.4864 8.85076 2.33716 8.66667 2.33716H7.33333ZM10 3.33716V2.67049C10 1.93411 9.40305 1.33716 8.66667 1.33716H7.33333C6.59695 1.33716 6 1.93411 6 2.67049V3.33716H2.5C2.22386 3.33716 2 3.56102 2 3.83716C2 4.1133 2.22386 4.33716 2.5 4.33716H3.03122L3.57716 12.7993C3.64506 13.8516 4.51843 14.6705 5.57301 14.6705H10.427C11.4816 14.6705 12.3549 13.8516 12.4228 12.7993L12.9688 4.33716H13.5C13.7761 4.33716 14 4.1133 14 3.83716C14 3.56102 13.7761 3.33716 13.5 3.33716H10ZM11.9667 4.33716H4.0333L4.57509 12.7349C4.60903 13.2611 5.04572 13.6705 5.57301 13.6705H10.427C10.9543 13.6705 11.391 13.2611 11.4249 12.7349L11.9667 4.33716ZM6.5 6.00383C6.77614 6.00383 7 6.22768 7 6.50383V11.5038C7 11.78 6.77614 12.0038 6.5 12.0038C6.22386 12.0038 6 11.78 6 11.5038V6.50383C6 6.22768 6.22386 6.00383 6.5 6.00383ZM9.5 6.00383C9.77614 6.00383 10 6.22768 10 6.50383V11.5038C10 11.78 9.77614 12.0038 9.5 12.0038C9.22386 12.0038 9 11.78 9 11.5038V6.50383C9 6.22768 9.22386 6.00383 9.5 6.00383Z",
4795
- fill: "#CF2231"
4796
- }));
4797
- };
4798
- var EditIcon = function EditIcon() {
4799
- return /*#__PURE__*/React.createElement("svg", {
4800
- width: "16",
4801
- height: "16",
4802
- viewBox: "0 0 16 16",
4803
- fill: "none",
4804
- xmlns: "http://www.w3.org/2000/svg"
4805
- }, /*#__PURE__*/React.createElement("g", {
4806
- clipPath: "url(#clip0_13010_74651)"
4807
- }, /*#__PURE__*/React.createElement("path", {
4808
- d: "M10.7197 1.72376C11.7029 0.740515 13.2971 0.740516 14.2803 1.72377C15.2636 2.70701 15.2636 4.30118 14.2803 5.28443L5.14645 14.4183C4.77137 14.7934 4.26267 15.0041 3.73223 15.0041H2C1.44772 15.0041 1 14.5564 1 14.0041V12.2719C1 11.7414 1.21071 11.2327 1.58579 10.8576L10.7197 1.72376ZM13.2197 2.78443C12.8222 2.38696 12.1778 2.38696 11.7803 2.78443L11.0607 3.5041L12.5 4.94344L13.2197 4.22376C13.6171 3.8263 13.6171 3.18189 13.2197 2.78443ZM11.4393 6.0041L10 4.56476L2.64645 11.9183C2.55268 12.0121 2.5 12.1393 2.5 12.2719V13.5041H3.73223C3.86484 13.5041 3.99202 13.4514 4.08579 13.3576L11.4393 6.0041Z",
4809
- fill: "#EC5D25"
4810
- })), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
4811
- id: "clip0_13010_74651"
4812
- }, /*#__PURE__*/React.createElement("rect", {
4813
- width: "16",
4814
- height: "16",
4815
- fill: "white",
4816
- transform: "translate(0 0.00390625)"
4817
- }))));
4818
- };
4968
+ id = _useSelector.id;
4969
+ var _useParams = useParams(),
4970
+ editUserId = _useParams.userId;
4971
+ var userID = isProfile ? id : editUserId;
4819
4972
  var handleClose = function handleClose() {
4820
4973
  setOpen(false);
4821
4974
  setDeleteItemData(null);
@@ -4908,7 +5061,7 @@ var SavedMemberships = function SavedMemberships(_ref) {
4908
5061
  loyalty_program_image_url = _ref4$loyalty_program === void 0 ? null : _ref4$loyalty_program,
4909
5062
  _ref4$loyalty_program2 = _ref4.loyalty_program_name,
4910
5063
  loyalty_program_name = _ref4$loyalty_program2 === void 0 ? '' : _ref4$loyalty_program2;
4911
- var isOther = !!name;
5064
+ var isOther = (loyalty_program_name || program_name) === 'Other';
4912
5065
  return /*#__PURE__*/React.createElement("div", {
4913
5066
  className: styles$3.savedMembership,
4914
5067
  key: ind
@@ -4941,7 +5094,7 @@ var SavedMemberships = function SavedMemberships(_ref) {
4941
5094
  }
4942
5095
  }, /*#__PURE__*/React.createElement(FallbackIcon, {
4943
5096
  type: type
4944
- })), /*#__PURE__*/React.createElement("p", null, loyalty_program_name === 'Other' ? name || loyalty_program_name || program_name : loyalty_program_name || program_name || name)), /*#__PURE__*/React.createElement("div", {
5097
+ })), /*#__PURE__*/React.createElement("p", null, (loyalty_program_name || program_name) === 'Other' ? name || loyalty_program_name || program_name : loyalty_program_name || program_name || name)), /*#__PURE__*/React.createElement("div", {
4945
5098
  className: styles$3.number
4946
5099
  }, number), /*#__PURE__*/React.createElement("div", {
4947
5100
  className: styles$3.actions
@@ -4980,7 +5133,9 @@ var AddMembershipButton = memo(function (_ref) {
4980
5133
  _ref$updateList = _ref.updateList,
4981
5134
  updateList = _ref$updateList === void 0 ? function () {} : _ref$updateList,
4982
5135
  _ref$handleEdit = _ref.handleEdit,
4983
- handleEdit = _ref$handleEdit === void 0 ? function () {} : _ref$handleEdit;
5136
+ handleEdit = _ref$handleEdit === void 0 ? function () {} : _ref$handleEdit,
5137
+ _ref$isProfile = _ref.isProfile,
5138
+ isProfile = _ref$isProfile === void 0 ? false : _ref$isProfile;
4984
5139
  var handleAddMembership = function handleAddMembership(type) {
4985
5140
  var currentModalState = _extends({}, modalState);
4986
5141
  currentModalState.open = true;
@@ -5013,7 +5168,8 @@ var AddMembershipButton = memo(function (_ref) {
5013
5168
  list: list,
5014
5169
  type: type,
5015
5170
  updateList: updateList,
5016
- handleEdit: handleEdit
5171
+ handleEdit: handleEdit,
5172
+ isProfile: isProfile
5017
5173
  }), /*#__PURE__*/React.createElement(IUIButton, {
5018
5174
  buttonText: "Add membership",
5019
5175
  type: "text",
@@ -5030,6 +5186,7 @@ var AddMembershipButton = memo(function (_ref) {
5030
5186
 
5031
5187
  var IUIToastMessageService$5 = services.IUIToastMessageService;
5032
5188
  var api$7 = configs.api;
5189
+ var sixteenDigitNumber$1 = /^\d{16}$/;
5033
5190
  var Membership = function Membership(_ref) {
5034
5191
  var _clsx;
5035
5192
  var _ref$membershipInfoIn = _ref.membershipInfoInput,
@@ -5049,8 +5206,9 @@ var Membership = function Membership(_ref) {
5049
5206
  savedMemberships = _useState[0],
5050
5207
  setSavedMemberships = _useState[1];
5051
5208
  var groupedMembershipData = savedMemberships.reduce(function (acc, item) {
5052
- acc[item.membership_type] = acc[item.membership_type] || [];
5053
- acc[item.membership_type].push(item);
5209
+ var _acc$item$membership_;
5210
+ acc[item === null || item === void 0 ? void 0 : item.membership_type] = (acc === null || acc === void 0 ? void 0 : acc[item === null || item === void 0 ? void 0 : item.membership_type]) || [];
5211
+ acc === null || acc === void 0 ? void 0 : (_acc$item$membership_ = acc[item === null || item === void 0 ? void 0 : item.membership_type]) === null || _acc$item$membership_ === void 0 ? void 0 : _acc$item$membership_.push(item);
5054
5212
  return acc;
5055
5213
  }, {
5056
5214
  flight: [],
@@ -5109,6 +5267,8 @@ var Membership = function Membership(_ref) {
5109
5267
  setMembershipNumber = _useState14[1];
5110
5268
  var wrapperRef = useRef(null);
5111
5269
  var nextRef = useRef(null);
5270
+ var isEditing = editIndex !== null;
5271
+ var isAAAloyaltySelected = (selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.program_name) === 'AAA' || (selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.loyalty_program_name) === 'AAA';
5112
5272
  var fetchItems = function fetchItems(query, reset) {
5113
5273
  if (query === void 0) {
5114
5274
  query = '';
@@ -5214,7 +5374,7 @@ var Membership = function Membership(_ref) {
5214
5374
  return;
5215
5375
  }
5216
5376
  if (item) {
5217
- if (index) {
5377
+ if (isEditing) {
5218
5378
  groupedMembershipData[type][index] = _extends({}, groupedMembershipData[type][index], {
5219
5379
  number: item.number,
5220
5380
  name: item.name
@@ -5222,11 +5382,12 @@ var Membership = function Membership(_ref) {
5222
5382
  } else groupedMembershipData[type] = [].concat(groupedMembershipData[type], [item]);
5223
5383
  }
5224
5384
  if (index !== null && !item) {
5225
- if (index < 0 || index >= groupedMembershipData[type].length) {
5385
+ var _groupedMembershipDat, _groupedMembershipDat2;
5386
+ if (index < 0 || index >= (groupedMembershipData === null || groupedMembershipData === void 0 ? void 0 : (_groupedMembershipDat = groupedMembershipData[type]) === null || _groupedMembershipDat === void 0 ? void 0 : _groupedMembershipDat.length)) {
5226
5387
  console.error("Invalid index: " + index);
5227
5388
  return;
5228
5389
  }
5229
- groupedMembershipData[type] = [].concat(groupedMembershipData[type].slice(0, index), groupedMembershipData[type].slice(index + 1));
5390
+ groupedMembershipData[type] = [].concat(groupedMembershipData === null || groupedMembershipData === void 0 ? void 0 : (_groupedMembershipDat2 = groupedMembershipData[type]) === null || _groupedMembershipDat2 === void 0 ? void 0 : _groupedMembershipDat2.slice(0, index), groupedMembershipData[type].slice(index + 1));
5230
5391
  }
5231
5392
  var flight = groupedMembershipData.flight,
5232
5393
  hotel = groupedMembershipData.hotel,
@@ -5236,34 +5397,55 @@ var Membership = function Membership(_ref) {
5236
5397
  };
5237
5398
  var handleSubmit = function handleSubmit() {
5238
5399
  try {
5400
+ var _ref2, _ref3;
5401
+ if (isAAAloyaltySelected && !sixteenDigitNumber$1.test(membershipNumber)) {
5402
+ IUIToastMessageService$5.warningNotify('Enter 16-digit AAA membership ID');
5403
+ return Promise.resolve();
5404
+ }
5239
5405
  var url = "/api/v1/user-management/users/" + userID + "/membership";
5240
- var payload = editIndex ? _extends({}, selectedMembershipChain, {
5241
- number: membershipNumber,
5242
- name: membershipName || ''
5406
+ var payload = isEditing ? _extends({}, selectedMembershipChain, {
5407
+ number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5408
+ name: (_ref2 = membershipName || '') === null || _ref2 === void 0 ? void 0 : _ref2.trim()
5243
5409
  }) : {
5244
5410
  membership_type: type,
5245
- number: membershipNumber,
5411
+ number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5246
5412
  iata_code: null,
5247
5413
  user: userID,
5248
5414
  loyalty_program_id: selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.loyalty_program_id,
5249
- name: membershipName || ''
5415
+ name: (_ref3 = membershipName || '') === null || _ref3 === void 0 ? void 0 : _ref3.trim()
5250
5416
  };
5251
5417
  setIsUpdating(true);
5252
- var _temp2 = _finallyRethrows(function () {
5418
+ var _temp4 = _finallyRethrows(function () {
5253
5419
  return _catch(function () {
5254
- return Promise.resolve(editIndex ? api$7.put(url, payload) : api$7.post(url, payload)).then(function (response) {
5255
- if ((response === null || response === void 0 ? void 0 : response.status) === 201 || (response === null || response === void 0 ? void 0 : response.status) === 200) {
5256
- var _response$data3;
5257
- var updatedResponse = response === null || response === void 0 ? void 0 : response.data;
5420
+ function _temp3() {
5421
+ var _response, _response2;
5422
+ if (((_response = response) === null || _response === void 0 ? void 0 : _response.status) === 201 || ((_response2 = response) === null || _response2 === void 0 ? void 0 : _response2.status) === 200) {
5423
+ var _response3;
5424
+ var updatedResponse = (_response3 = response) === null || _response3 === void 0 ? void 0 : _response3.data;
5258
5425
  updatedResponse.program_name = selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.program_name;
5259
5426
  updatedResponse.loyalty_program_image_url = selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.loyalty_program_image_url;
5260
5427
  if (isOtherMembership) updatedResponse.loyalty_program_name = 'Other';
5261
- updateList(response === null || response === void 0 ? void 0 : (_response$data3 = response.data) === null || _response$data3 === void 0 ? void 0 : _response$data3.membership_type, editIndex, updatedResponse);
5262
- IUIToastMessageService$5.sNotify(editIndex ? "Membership updated." : "New membership added.");
5428
+ updateList(type, editIndex, updatedResponse);
5429
+ if (userID) IUIToastMessageService$5.sNotify(isEditing ? "Membership updated." : "New membership added.");
5263
5430
  } else {
5264
5431
  IUIToastMessageService$5.warningNotify('Failed to save membership');
5265
5432
  }
5266
- });
5433
+ }
5434
+ var response = {};
5435
+ var _temp2 = function () {
5436
+ if (userID) {
5437
+ return Promise.resolve(isEditing ? api$7.put(url, payload) : api$7.post(url, payload)).then(function (_api$put) {
5438
+ response = _api$put;
5439
+ });
5440
+ } else {
5441
+ delete payload.user;
5442
+ response = {
5443
+ data: payload,
5444
+ status: 200
5445
+ };
5446
+ }
5447
+ }();
5448
+ return _temp2 && _temp2.then ? _temp2.then(_temp3) : _temp3(_temp2);
5267
5449
  }, function (error) {
5268
5450
  console.error(error);
5269
5451
  IUIToastMessageService$5.warningNotify('Something went wrong!');
@@ -5273,7 +5455,7 @@ var Membership = function Membership(_ref) {
5273
5455
  if (_wasThrown) throw _result;
5274
5456
  return _result;
5275
5457
  });
5276
- return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
5458
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
5277
5459
  } catch (e) {
5278
5460
  return Promise.reject(e);
5279
5461
  }
@@ -5298,10 +5480,10 @@ var Membership = function Membership(_ref) {
5298
5480
  closeHandler: handleClose,
5299
5481
  modalClass: clsx(styles$3.loyaltymodal, (_clsx = {}, _clsx[styles$3.loyaltyList] = !selectedMembershipChain, _clsx)),
5300
5482
  cancelLabel: selectedMembershipChain ? 'Cancel' : '',
5301
- submitLabel: selectedMembershipChain ? isUpdating ? 'Saving...' : editIndex ? 'Save' : 'Add' : '',
5483
+ submitLabel: selectedMembershipChain ? isUpdating ? 'Saving...' : isEditing ? 'Save' : 'Add' : '',
5302
5484
  submitHandler: handleSubmit,
5303
- isDisabledSubmitBtn: isUpdating || !membershipNumber || isOtherMembership && !membershipName,
5304
- width: "640px",
5485
+ isDisabledSubmitBtn: isUpdating || !membershipNumber || isOtherMembership && !membershipName || isAAAloyaltySelected && !sixteenDigitNumber$1.test(membershipNumber),
5486
+ width: selectedMembershipChain ? '480px' : '640px',
5305
5487
  headerText: selectedMembershipChain ? '' : title,
5306
5488
  subHanderText: selectedMembershipChain ? '' : subtitle,
5307
5489
  modalBodyStyle: {
@@ -5318,7 +5500,8 @@ var Membership = function Membership(_ref) {
5318
5500
  setMembershipName: setMembershipName,
5319
5501
  setMembershipNumber: setMembershipNumber,
5320
5502
  type: type,
5321
- isEdit: !!editIndex
5503
+ isEdit: isEditing,
5504
+ isAAAloyaltySelected: isAAAloyaltySelected
5322
5505
  }) : /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", {
5323
5506
  style: {
5324
5507
  color: '#374151',
@@ -5379,7 +5562,8 @@ var Membership = function Membership(_ref) {
5379
5562
  modalState: modalState,
5380
5563
  list: groupedMembershipData[memType],
5381
5564
  updateList: updateList,
5382
- handleEdit: handleEdit
5565
+ handleEdit: handleEdit,
5566
+ isProfile: isProfile
5383
5567
  }), ind < 2 && /*#__PURE__*/React.createElement(IUIDivider, {
5384
5568
  className: styles$3.divider
5385
5569
  }));
@@ -6751,6 +6935,7 @@ var UserAddEdit = function UserAddEdit(props) {
6751
6935
  userId: isProfile ? id : editUserId
6752
6936
  })).then(function (res) {
6753
6937
  var _res$user_tags, _res$custom_attribute;
6938
+ console.log(res, 'paymentDetails1', res === null || res === void 0 ? void 0 : res.payment_details);
6754
6939
  var profilePic = [];
6755
6940
  if (res && res.profile_pic) {
6756
6941
  profilePic = [{
@@ -7428,32 +7613,6 @@ var UserAddEdit = function UserAddEdit(props) {
7428
7613
  }()
7429
7614
  });
7430
7615
  });
7431
- if (res.client_admin) {
7432
- setTravelApproversInput(function (prevState) {
7433
- var nextState = _extends({}, prevState);
7434
- for (var key in nextState) {
7435
- if (Object.hasOwnProperty.call(nextState, key)) {
7436
- nextState[key] = {
7437
- value: res.client_admin,
7438
- label: res.client_admin
7439
- };
7440
- }
7441
- }
7442
- return nextState;
7443
- });
7444
- setExpenseApproversInput(function (prevState) {
7445
- var nextState = _extends({}, prevState);
7446
- for (var key in nextState) {
7447
- if (Object.hasOwnProperty.call(nextState, key)) {
7448
- nextState[key] = {
7449
- value: res.client_admin,
7450
- label: res.client_admin
7451
- };
7452
- }
7453
- }
7454
- return nextState;
7455
- });
7456
- }
7457
7616
  })["catch"](function (err) {
7458
7617
  console.log(err);
7459
7618
  })["finally"](function () {
@@ -7725,8 +7884,6 @@ var UserAddEdit = function UserAddEdit(props) {
7725
7884
  isProfile: isProfile,
7726
7885
  editUserId: editUserId,
7727
7886
  roles: renderFields.travelRoles
7728
- }), /*#__PURE__*/React.createElement(IUIDivider, {
7729
- className: styles.dividerColor
7730
7887
  }), /*#__PURE__*/React.createElement(AdditionalInfo, {
7731
7888
  membershipInfoInput: membershipInfoInput,
7732
7889
  onMemInfoInputChange: onMemInfoInputChange,
@@ -9318,7 +9475,7 @@ var BulkDownloadIcon = function BulkDownloadIcon(props) {
9318
9475
  }));
9319
9476
  };
9320
9477
 
9321
- var classes = {"containedBtn":"_2A4_u","customMiniBox":"_QGIKG","muiBtn":"_3iFbO","outlinedBtn":"_3lQYD","menuList":"_1C8bJ","menuListContainer":"_1N83W","menuItemContainer":"_3VtcE","menuItemtext":"_2xqnU","subTxt":"_3CVzX"};
9478
+ var classes$1 = {"containedBtn":"_2A4_u","customMiniBox":"_QGIKG","muiBtn":"_3iFbO","outlinedBtn":"_3lQYD","menuList":"_1C8bJ","menuListContainer":"_1N83W","menuItemContainer":"_3VtcE","menuItemtext":"_2xqnU","subTxt":"_3CVzX"};
9322
9479
 
9323
9480
  var DropdownBtn = function DropdownBtn(props) {
9324
9481
  var _clsx;
@@ -9377,7 +9534,7 @@ var DropdownBtn = function DropdownBtn(props) {
9377
9534
  }, [open]);
9378
9535
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
9379
9536
  endIcon: endIcon,
9380
- className: clsx(classes.muiBtn, className, (_clsx = {}, _clsx[classes.outlinedBtn] = outlinedBtn, _clsx)),
9537
+ className: clsx(classes$1.muiBtn, className, (_clsx = {}, _clsx[classes$1.outlinedBtn] = outlinedBtn, _clsx)),
9381
9538
  disableRipple: disableRipple,
9382
9539
  variant: "outlined",
9383
9540
  ref: anchorRef,
@@ -9403,13 +9560,13 @@ var DropdownBtn = function DropdownBtn(props) {
9403
9560
  transformOrigin: placement === 'bottom' ? 'center top' : 'center bottom'
9404
9561
  }
9405
9562
  }), /*#__PURE__*/React.createElement(Paper, {
9406
- className: classes.menuListContainer,
9563
+ className: classes$1.menuListContainer,
9407
9564
  elevation: 0
9408
9565
  }, /*#__PURE__*/React.createElement(ClickAwayListener, {
9409
9566
  onClickAway: handleClose
9410
9567
  }, /*#__PURE__*/React.createElement(MenuList, {
9411
9568
  autoFocusItem: open,
9412
- className: clsx(classes.menuList, (_clsx2 = {}, _clsx2[classes.outlinedBtn] = outlinedBtn, _clsx2), menuListClass),
9569
+ className: clsx(classes$1.menuList, (_clsx2 = {}, _clsx2[classes$1.outlinedBtn] = outlinedBtn, _clsx2), menuListClass),
9413
9570
  id: "menu-list-grow",
9414
9571
  onKeyDown: function onKeyDown(e) {
9415
9572
  return handleListKeyDown(e);
@@ -9420,13 +9577,13 @@ var DropdownBtn = function DropdownBtn(props) {
9420
9577
  return handleMenuClick(val);
9421
9578
  },
9422
9579
  key: _i,
9423
- className: clsx(classes.menuItemContainer, val.disable && 'iui__cursor-not-allowed'),
9580
+ className: clsx(classes$1.menuItemContainer, val.disable && 'iui__cursor-not-allowed'),
9424
9581
  disableRipple: true
9425
9582
  }, /*#__PURE__*/React.createElement(Typography, {
9426
- className: clsx(classes.menuItemtext, val && val.disable && 'iui__opacity--60')
9583
+ className: clsx(classes$1.menuItemtext, val && val.disable && 'iui__opacity--60')
9427
9584
  }, val.label), val.subText && /*#__PURE__*/React.createElement(IUITypography, {
9428
9585
  variant: "subtitle2",
9429
- className: clsx(classes.menuItemtext, classes.subTxt)
9586
+ className: clsx(classes$1.menuItemtext, classes$1.subTxt)
9430
9587
  }, val.subText));
9431
9588
  })))));
9432
9589
  }));