@itilite/iui-user-management 1.4.722 → 1.4.761

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$1 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';
@@ -2244,84 +2234,193 @@ var editCustomFieldLabel = function editCustomFieldLabel(payload) {
2244
2234
 
2245
2235
  var IUILocalStorageService$4 = services.IUILocalStorageService;
2246
2236
  var env$3 = configs.env;
2247
- var CreditCard = function CreditCard(_ref) {
2248
- var cardId = _ref.cardId,
2249
- lastDigit = _ref.lastDigit,
2250
- expMonth = _ref.expMonth,
2251
- expYear = _ref.expYear,
2252
- cardBrand = _ref.cardBrand,
2253
- _ref$isDefaultCard = _ref.isDefaultCard,
2254
- isDefaultCard = _ref$isDefaultCard === void 0 ? false : _ref$isDefaultCard,
2255
- 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;
2256
2241
  var dispatch = useDispatch();
2257
- var handleCardDelete = function handleCardDelete() {
2258
- dispatch(deletePaymentCard({
2259
- pmId: cardId,
2260
- vendorId: pg.vendor_id
2261
- }));
2262
- };
2263
- var setDefaultCard = function setDefaultCard() {
2242
+ var pg = paymentDetails.pg,
2243
+ _paymentDetails$cards = paymentDetails.cards,
2244
+ cards = _paymentDetails$cards === void 0 ? null : _paymentDetails$cards;
2245
+ var _useState = useState(null),
2246
+ anchorEl = _useState[0],
2247
+ setAnchorEl = _useState[1];
2248
+ var _useState2 = useState(null),
2249
+ selectedCard = _useState2[0],
2250
+ setSelectedCard = _useState2[1];
2251
+ var handleMenuClick = function handleMenuClick(event, card) {
2252
+ setAnchorEl(event.currentTarget);
2253
+ setSelectedCard(card);
2254
+ };
2255
+ var handleMenuClose = function handleMenuClose() {
2256
+ setAnchorEl(null);
2257
+ setSelectedCard(null);
2258
+ };
2259
+ var handleMarkAsDefault = function handleMarkAsDefault() {
2260
+ console.log('Mark as default:', selectedCard);
2261
+ if (!pg || !selectedCard) return;
2264
2262
  dispatch(setDefaultPaymentCard({
2265
2263
  user_id: +pg.user_id,
2266
- method_id: cardId,
2264
+ method_id: selectedCard.id,
2267
2265
  vendor_id: +pg.vendor_id,
2268
2266
  app_type: 1
2269
2267
  }));
2268
+ handleMenuClose();
2270
2269
  };
2271
- return /*#__PURE__*/React.createElement("div", {
2272
- className: styles$1.card
2273
- }, /*#__PURE__*/React.createElement("div", {
2274
- className: styles$1.cardLabel
2275
- }, isDefaultCard ? /*#__PURE__*/React.createElement("span", {
2276
- className: styles$1.defaultLabel
2277
- }, "Default Card") : /*#__PURE__*/React.createElement("button", {
2278
- type: "button",
2279
- onClick: setDefaultCard,
2280
- className: styles$1.defaultBtn
2281
- }, "Make This Default")), !isDefaultCard && /*#__PURE__*/React.createElement("div", {
2282
- className: styles$1.cardDeleteBtn
2283
- }, /*#__PURE__*/React.createElement("button", {
2284
- type: "button",
2285
- onClick: handleCardDelete
2286
- }, /*#__PURE__*/React.createElement(DeleteIcon$1, {
2287
- width: "10",
2288
- height: "10"
2289
- }))), /*#__PURE__*/React.createElement("div", {
2290
- className: styles$1.cardNumber
2291
- }, /*#__PURE__*/React.createElement("span", {
2292
- className: styles$1.cardDigit
2293
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2294
- className: styles$1.cardDigit
2295
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2296
- className: styles$1.cardDigit
2297
- }, "XXXX"), /*#__PURE__*/React.createElement("span", {
2298
- className: styles$1.cardDigit
2299
- }, lastDigit)), /*#__PURE__*/React.createElement("div", {
2300
- className: styles$1.expiryDate
2301
- }, expMonth, " / ", expYear), /*#__PURE__*/React.createElement("div", {
2302
- className: clsx(styles$1.cardImage, styles$1[cardBrand])
2303
- }));
2304
- };
2305
- var AddCard = function AddCard(_ref2) {
2306
- var pg = _ref2.pg;
2307
- var _url = env$3.getPaymentUrl() + ("/api/v1/auth/" + IUILocalStorageService$4.getAccessToken() + "/1/" + pg.entity_id + "/0/" + pg.vendor_id + "/1");
2308
- var handleAddCard = function handleAddCard() {
2309
- window.location.assign(_url);
2270
+ var handleDeleteCard = function handleDeleteCard() {
2271
+ dispatch(deletePaymentCard({
2272
+ pmId: selectedCard.id,
2273
+ vendorId: pg.vendor_id
2274
+ }));
2275
+ handleMenuClose();
2276
+ };
2277
+ var getBrandLogo = function getBrandLogo(brand) {
2278
+ var logos = {
2279
+ visa: 'https://upload.wikimedia.org/wikipedia/commons/0/04/Visa.svg',
2280
+ mastercard: 'https://upload.wikimedia.org/wikipedia/commons/2/2a/Mastercard-logo.svg',
2281
+ amex: 'https://upload.wikimedia.org/wikipedia/commons/3/30/American_Express_logo.svg'
2282
+ };
2283
+ return logos[brand.toLowerCase()] || '';
2284
+ };
2285
+ var getCardTypeClass = function getCardTypeClass(category) {
2286
+ return category === 'Corporate' ? 'corporate' : category === 'Company' ? 'company' : 'personal';
2287
+ };
2288
+ var getCardTypeLabel = function getCardTypeLabel(category) {
2289
+ return category === 'Corporate' ? 'CORPORATE' : category === 'Company' ? 'COMPANY' : 'PERSONAL';
2290
+ };
2291
+ var MoreIcon = function MoreIcon(_ref2) {
2292
+ var _ref2$color = _ref2.color,
2293
+ color = _ref2$color === void 0 ? '#3D89FF' : _ref2$color,
2294
+ className = _ref2.className;
2295
+ return /*#__PURE__*/React.createElement("svg", {
2296
+ width: "16",
2297
+ height: "16",
2298
+ viewBox: "0 0 16 16",
2299
+ fill: "none",
2300
+ className: className
2301
+ }, /*#__PURE__*/React.createElement("path", {
2302
+ 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",
2303
+ stroke: color,
2304
+ strokeLinecap: "round",
2305
+ strokeLinejoin: "round"
2306
+ }), /*#__PURE__*/React.createElement("path", {
2307
+ 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",
2308
+ stroke: color,
2309
+ strokeLinecap: "round",
2310
+ strokeLinejoin: "round"
2311
+ }), /*#__PURE__*/React.createElement("path", {
2312
+ 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",
2313
+ stroke: color,
2314
+ strokeLinecap: "round",
2315
+ strokeLinejoin: "round"
2316
+ }));
2317
+ };
2318
+ var LockIcon = function LockIcon(_ref3) {
2319
+ return /*#__PURE__*/React.createElement("svg", {
2320
+ xmlns: "http://www.w3.org/2000/svg",
2321
+ width: "16",
2322
+ height: "16",
2323
+ viewBox: "0 0 16 16",
2324
+ fill: "none"
2325
+ }, /*#__PURE__*/React.createElement("path", {
2326
+ 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",
2327
+ fill: "#2EA363"
2328
+ }));
2310
2329
  };
2330
+ var renderCard = function renderCard(card) {
2331
+ var isCompanyCard = card.category === 'Company';
2332
+ var cardClass = getCardTypeClass(card.category);
2333
+ var isDefaultCard = !!+card.metadata.default_card;
2334
+ return /*#__PURE__*/React.createElement("div", {
2335
+ key: card.id,
2336
+ className: clsx(classes.card, classes[cardClass])
2337
+ }, /*#__PURE__*/React.createElement("div", {
2338
+ className: classes.cardHeader
2339
+ }, /*#__PURE__*/React.createElement("div", {
2340
+ className: classes.cardTitleSection
2341
+ }, /*#__PURE__*/React.createElement("h3", {
2342
+ className: classes.cardName
2343
+ }, card.name), /*#__PURE__*/React.createElement("span", {
2344
+ className: classes.cardType
2345
+ }, getCardTypeLabel(card.category))), isCompanyCard ? /*#__PURE__*/React.createElement(LockIcon, {
2346
+ className: classes.lockIcon
2347
+ }) : /*#__PURE__*/React.createElement(IconButton, {
2348
+ size: "small",
2349
+ onClick: function onClick(e) {
2350
+ return handleMenuClick(e, card);
2351
+ },
2352
+ className: classes.menuButton
2353
+ }, /*#__PURE__*/React.createElement(MoreIcon, {
2354
+ className: clsx(classes.moreIcon, classes[cardClass]),
2355
+ color: isCompanyCard ? '#10B981' : '#3D89FF'
2356
+ }))), /*#__PURE__*/React.createElement("div", {
2357
+ className: classes.cardDetails
2358
+ }, /*#__PURE__*/React.createElement("div", {
2359
+ className: classes.cardNumber
2360
+ }, /*#__PURE__*/React.createElement("span", {
2361
+ className: classes.cardMaskedNumber
2362
+ }, "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022"), ' ', card.card.last4), /*#__PURE__*/React.createElement("div", {
2363
+ className: classes.cardExpiry
2364
+ }, "Expiry date ", card.card.exp_month, "/", String(card.card.exp_year).slice(-2)), /*#__PURE__*/React.createElement("div", {
2365
+ className: classes.cardCvv
2366
+ }, "CVV \u2022\u2022\u2022")), /*#__PURE__*/React.createElement("div", {
2367
+ className: classes.cardFooter
2368
+ }, isDefaultCard ? /*#__PURE__*/React.createElement("div", {
2369
+ className: styles$1.defaultLabel
2370
+ }, "Default Card") : /*#__PURE__*/React.createElement("div", null), /*#__PURE__*/React.createElement("img", {
2371
+ src: getBrandLogo(card.card.brand),
2372
+ alt: card.card.brand,
2373
+ className: classes.brandLogo
2374
+ })));
2375
+ };
2376
+ var personalCards = cards.filter(function (card) {
2377
+ return card.category === 'Personal';
2378
+ });
2379
+ var corporateCards = cards.filter(function (card) {
2380
+ return card.category === 'Corporate';
2381
+ });
2382
+ var companyCards = cards.filter(function (card) {
2383
+ return card.category === 'Company';
2384
+ });
2385
+ var _url = env$3.getPaymentUrl() + ("/api/v1/auth/" + IUILocalStorageService$4.getAccessToken() + "/1/" + pg.entity_id + "/0/" + pg.vendor_id + "/1");
2311
2386
  return /*#__PURE__*/React.createElement("div", {
2312
- className: clsx(styles$1.card, styles$1.cursonPointer),
2313
- onClick: handleAddCard
2314
- }, /*#__PURE__*/React.createElement("div", {
2315
- className: styles$1.addCard
2316
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(AddIcon$1, null)), /*#__PURE__*/React.createElement("div", null, "Add New Card")));
2317
- };
2318
- var PaymentCards = function PaymentCards(_ref3) {
2319
- var _paymentDetails$pg, _paymentDetails$pg2;
2320
- var paymentDetails = _ref3.paymentDetails;
2321
- 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)) {
2322
- return /*#__PURE__*/React.createElement(React.Fragment, null);
2323
- }
2324
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIDivider, {
2387
+ style: {
2388
+ marginBottom: -20
2389
+ }
2390
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2391
+ container: true,
2392
+ className: clsx(styles$1.sectionWrapper)
2393
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2394
+ item: true,
2395
+ sm: 12,
2396
+ md: 4
2397
+ }, /*#__PURE__*/React.createElement(IUILabel, {
2398
+ label: "My cards",
2399
+ headerType: true,
2400
+ description: "These are personal & company issued cards owned by you."
2401
+ })), /*#__PURE__*/React.createElement(IUIGrid, {
2402
+ item: true,
2403
+ sm: 12,
2404
+ md: 8,
2405
+ lg: 8,
2406
+ xl: 6
2407
+ }, /*#__PURE__*/React.createElement(IUIGrid, {
2408
+ container: true,
2409
+ className: styles$1.formFieldsWrapper
2410
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
2411
+ className: classes.cardsGrid
2412
+ }, personalCards.map(function (card) {
2413
+ return renderCard(card);
2414
+ }), corporateCards.map(function (card) {
2415
+ return renderCard(card);
2416
+ })), (!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", {
2417
+ className: classes.addCardButton,
2418
+ onClick: function onClick() {
2419
+ return window.location.assign(_url);
2420
+ }
2421
+ }, /*#__PURE__*/React.createElement("span", {
2422
+ className: classes.plusIcon
2423
+ }, "+"), " Add card")))))), (companyCards === null || companyCards === void 0 ? void 0 : companyCards.length) !== 0 && /*#__PURE__*/React.createElement(Fragment$1, null, /*#__PURE__*/React.createElement(IUIDivider, {
2325
2424
  className: styles$1.dividerColor
2326
2425
  }), /*#__PURE__*/React.createElement(IUIGrid, {
2327
2426
  container: true,
@@ -2331,9 +2430,9 @@ var PaymentCards = function PaymentCards(_ref3) {
2331
2430
  sm: 12,
2332
2431
  md: 4
2333
2432
  }, /*#__PURE__*/React.createElement(IUILabel, {
2334
- label: "Card Details",
2335
- headerType: true,
2336
- description: ""
2433
+ label: "Company cards",
2434
+ description: "These are the centralized cards owned by your company.",
2435
+ headerType: true
2337
2436
  })), /*#__PURE__*/React.createElement(IUIGrid, {
2338
2437
  item: true,
2339
2438
  sm: 12,
@@ -2343,20 +2442,43 @@ var PaymentCards = function PaymentCards(_ref3) {
2343
2442
  }, /*#__PURE__*/React.createElement(IUIGrid, {
2344
2443
  container: true,
2345
2444
  className: styles$1.formFieldsWrapper
2346
- }, /*#__PURE__*/React.createElement(React.Fragment, null, paymentDetails.cards && paymentDetails.cards.map(function (card) {
2347
- return /*#__PURE__*/React.createElement(CreditCard, {
2348
- key: card.id,
2349
- cardId: card.id,
2350
- lastDigit: card.card.last4,
2351
- expMonth: card.card.exp_month,
2352
- expYear: card.card.exp_year,
2353
- cardBrand: card.card.brand,
2354
- isDefaultCard: !!+card.metadata.default_card,
2355
- pg: paymentDetails.pg
2356
- });
2357
- }), (!paymentDetails.cards || paymentDetails.cards.length < 10) && paymentDetails.pg.gateway.toLowerCase() === 'stripe' && paymentDetails.pg.save_card_enable === 1 && /*#__PURE__*/React.createElement(AddCard, {
2358
- pg: paymentDetails.pg
2359
- }))))));
2445
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2446
+ className: classes.cardsGrid
2447
+ }, companyCards.map(function (card) {
2448
+ return renderCard(card);
2449
+ }))))))), /*#__PURE__*/React.createElement(Menu, {
2450
+ anchorEl: anchorEl,
2451
+ open: Boolean(anchorEl),
2452
+ onClose: handleMenuClose,
2453
+ anchorOrigin: {
2454
+ vertical: 'top',
2455
+ horizontal: 'right'
2456
+ },
2457
+ transformOrigin: {
2458
+ vertical: 'top',
2459
+ horizontal: 'right'
2460
+ }
2461
+ }, /*#__PURE__*/React.createElement(MenuItem, {
2462
+ onClick: handleMarkAsDefault
2463
+ }, "Mark as default"), /*#__PURE__*/React.createElement(MenuItem, {
2464
+ onClick: handleDeleteCard,
2465
+ style: {
2466
+ color: '#ff4444'
2467
+ }
2468
+ }, "Delete card")));
2469
+ };
2470
+
2471
+ var PaymentCards = function PaymentCards(_ref) {
2472
+ var _paymentDetails$pg, _paymentDetails$pg2;
2473
+ var paymentDetails = _ref.paymentDetails;
2474
+ 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)) {
2475
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
2476
+ }
2477
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IUIDivider, {
2478
+ className: styles$1.dividerColor
2479
+ }), /*#__PURE__*/React.createElement(CardsManagement, {
2480
+ paymentDetails: paymentDetails
2481
+ }));
2360
2482
  };
2361
2483
 
2362
2484
  function AddIcon(props) {
@@ -2725,7 +2847,7 @@ var TravelExpenseFields = function TravelExpenseFields(props) {
2725
2847
  isError: !!errMsg[i],
2726
2848
  placeholder: "Example label - \u201CManager\u201D"
2727
2849
  }));
2728
- })))), type === 'travel' && isProfile && paymentDetails && /*#__PURE__*/React.createElement(PaymentCards, {
2850
+ })))), type === 'travel' && paymentDetails && /*#__PURE__*/React.createElement(PaymentCards, {
2729
2851
  paymentDetails: paymentDetails
2730
2852
  }));
2731
2853
  };
@@ -5273,21 +5395,22 @@ var Membership = function Membership(_ref) {
5273
5395
  };
5274
5396
  var handleSubmit = function handleSubmit() {
5275
5397
  try {
5398
+ var _ref2, _ref3;
5276
5399
  if (isAAAloyaltySelected && !sixteenDigitNumber$1.test(membershipNumber)) {
5277
5400
  IUIToastMessageService$5.warningNotify('Enter 16-digit AAA membership ID');
5278
5401
  return Promise.resolve();
5279
5402
  }
5280
5403
  var url = "/api/v1/user-management/users/" + userID + "/membership";
5281
5404
  var payload = isEditing ? _extends({}, selectedMembershipChain, {
5282
- number: membershipNumber,
5283
- name: membershipName || ''
5405
+ number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5406
+ name: (_ref2 = membershipName || '') === null || _ref2 === void 0 ? void 0 : _ref2.trim()
5284
5407
  }) : {
5285
5408
  membership_type: type,
5286
- number: membershipNumber,
5409
+ number: membershipNumber === null || membershipNumber === void 0 ? void 0 : membershipNumber.trim(),
5287
5410
  iata_code: null,
5288
5411
  user: userID,
5289
5412
  loyalty_program_id: selectedMembershipChain === null || selectedMembershipChain === void 0 ? void 0 : selectedMembershipChain.loyalty_program_id,
5290
- name: membershipName || ''
5413
+ name: (_ref3 = membershipName || '') === null || _ref3 === void 0 ? void 0 : _ref3.trim()
5291
5414
  };
5292
5415
  setIsUpdating(true);
5293
5416
  var _temp4 = _finallyRethrows(function () {
@@ -7487,32 +7610,6 @@ var UserAddEdit = function UserAddEdit(props) {
7487
7610
  }()
7488
7611
  });
7489
7612
  });
7490
- if (res.client_admin) {
7491
- setTravelApproversInput(function (prevState) {
7492
- var nextState = _extends({}, prevState);
7493
- for (var key in nextState) {
7494
- if (Object.hasOwnProperty.call(nextState, key)) {
7495
- nextState[key] = {
7496
- value: res.client_admin,
7497
- label: res.client_admin
7498
- };
7499
- }
7500
- }
7501
- return nextState;
7502
- });
7503
- setExpenseApproversInput(function (prevState) {
7504
- var nextState = _extends({}, prevState);
7505
- for (var key in nextState) {
7506
- if (Object.hasOwnProperty.call(nextState, key)) {
7507
- nextState[key] = {
7508
- value: res.client_admin,
7509
- label: res.client_admin
7510
- };
7511
- }
7512
- }
7513
- return nextState;
7514
- });
7515
- }
7516
7613
  })["catch"](function (err) {
7517
7614
  console.log(err);
7518
7615
  })["finally"](function () {
@@ -7784,8 +7881,6 @@ var UserAddEdit = function UserAddEdit(props) {
7784
7881
  isProfile: isProfile,
7785
7882
  editUserId: editUserId,
7786
7883
  roles: renderFields.travelRoles
7787
- }), /*#__PURE__*/React.createElement(IUIDivider, {
7788
- className: styles.dividerColor
7789
7884
  }), /*#__PURE__*/React.createElement(AdditionalInfo, {
7790
7885
  membershipInfoInput: membershipInfoInput,
7791
7886
  onMemInfoInputChange: onMemInfoInputChange,
@@ -9377,7 +9472,7 @@ var BulkDownloadIcon = function BulkDownloadIcon(props) {
9377
9472
  }));
9378
9473
  };
9379
9474
 
9380
- var classes = {"containedBtn":"_2A4_u","customMiniBox":"_QGIKG","muiBtn":"_3iFbO","outlinedBtn":"_3lQYD","menuList":"_1C8bJ","menuListContainer":"_1N83W","menuItemContainer":"_3VtcE","menuItemtext":"_2xqnU","subTxt":"_3CVzX"};
9475
+ var classes$1 = {"containedBtn":"_2A4_u","customMiniBox":"_QGIKG","muiBtn":"_3iFbO","outlinedBtn":"_3lQYD","menuList":"_1C8bJ","menuListContainer":"_1N83W","menuItemContainer":"_3VtcE","menuItemtext":"_2xqnU","subTxt":"_3CVzX"};
9381
9476
 
9382
9477
  var DropdownBtn = function DropdownBtn(props) {
9383
9478
  var _clsx;
@@ -9436,7 +9531,7 @@ var DropdownBtn = function DropdownBtn(props) {
9436
9531
  }, [open]);
9437
9532
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
9438
9533
  endIcon: endIcon,
9439
- className: clsx(classes.muiBtn, className, (_clsx = {}, _clsx[classes.outlinedBtn] = outlinedBtn, _clsx)),
9534
+ className: clsx(classes$1.muiBtn, className, (_clsx = {}, _clsx[classes$1.outlinedBtn] = outlinedBtn, _clsx)),
9440
9535
  disableRipple: disableRipple,
9441
9536
  variant: "outlined",
9442
9537
  ref: anchorRef,
@@ -9462,13 +9557,13 @@ var DropdownBtn = function DropdownBtn(props) {
9462
9557
  transformOrigin: placement === 'bottom' ? 'center top' : 'center bottom'
9463
9558
  }
9464
9559
  }), /*#__PURE__*/React.createElement(Paper, {
9465
- className: classes.menuListContainer,
9560
+ className: classes$1.menuListContainer,
9466
9561
  elevation: 0
9467
9562
  }, /*#__PURE__*/React.createElement(ClickAwayListener, {
9468
9563
  onClickAway: handleClose
9469
9564
  }, /*#__PURE__*/React.createElement(MenuList, {
9470
9565
  autoFocusItem: open,
9471
- className: clsx(classes.menuList, (_clsx2 = {}, _clsx2[classes.outlinedBtn] = outlinedBtn, _clsx2), menuListClass),
9566
+ className: clsx(classes$1.menuList, (_clsx2 = {}, _clsx2[classes$1.outlinedBtn] = outlinedBtn, _clsx2), menuListClass),
9472
9567
  id: "menu-list-grow",
9473
9568
  onKeyDown: function onKeyDown(e) {
9474
9569
  return handleListKeyDown(e);
@@ -9479,13 +9574,13 @@ var DropdownBtn = function DropdownBtn(props) {
9479
9574
  return handleMenuClick(val);
9480
9575
  },
9481
9576
  key: _i,
9482
- className: clsx(classes.menuItemContainer, val.disable && 'iui__cursor-not-allowed'),
9577
+ className: clsx(classes$1.menuItemContainer, val.disable && 'iui__cursor-not-allowed'),
9483
9578
  disableRipple: true
9484
9579
  }, /*#__PURE__*/React.createElement(Typography, {
9485
- className: clsx(classes.menuItemtext, val && val.disable && 'iui__opacity--60')
9580
+ className: clsx(classes$1.menuItemtext, val && val.disable && 'iui__opacity--60')
9486
9581
  }, val.label), val.subText && /*#__PURE__*/React.createElement(IUITypography, {
9487
9582
  variant: "subtitle2",
9488
- className: clsx(classes.menuItemtext, classes.subTxt)
9583
+ className: clsx(classes$1.menuItemtext, classes$1.subTxt)
9489
9584
  }, val.subText));
9490
9585
  })))));
9491
9586
  }));