@weareconceptstudio/account 0.3.9 → 0.4.1

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.
@@ -29,7 +29,7 @@ const AddressItem = ({ type, title, data, checkout_review, select_address, onCli
29
29
  React.createElement("div", { className: `item-internal-wrap` },
30
30
  React.createElement("div", { className: `relative-wrapper` },
31
31
  React.createElement("div", { className: `personal-data-wrap` }, data.displayLines.map((line, index) => (React.createElement(Text, { key: index, className: `account-p account-p3 ${index == 0 ? 'account-font-bold' : 'account-font-regular'} ${index % 2 != 0 ? 'col-wrap' : ''} account-primary-color1`, text: line })))),
32
- data.is_default ? (React.createElement(Text, { className: `account-p account-p3 account-font-bold account-primary-color1 margin-style is-default`, text: `${type === 'shipping' ? 'defaultShippingAddress' : type == 'billing' ? 'defaultBillingAddress' : 'defaultAddress'}` })) : (React.createElement(Text, { className: `account-p account-p3 account-font-bold account-primary-color1 margin-style opacity-zero`, text: `empty` })),
32
+ data.is_default ? (React.createElement(Text, { className: `account-p account-p3 account-font-bold account-primary-color3 margin-style is-default`, text: `${type === 'shipping' ? 'defaultShippingAddress' : type == 'billing' ? 'defaultBillingAddress' : 'defaultAddress'}` })) : (React.createElement(Text, { className: `account-p account-p3 account-font-bold account-primary-color1 margin-style opacity-zero`, text: `empty` })),
33
33
  select_address && (React.createElement("div", { className: `circle-selected-wrap cursor-pointer ${checkedId == data.id ? 'active' : ''}`, onClick: () => setCheckedId(data.id) },
34
34
  React.createElement("svg", { version: '1.1', viewBox: '0 0 32 32', xmlns: 'http://www.w3.org/2000/svg', className: `checkbox-icon ${selectedAddresses?.id === data.id ? 'selected' : 'note-selected'}` },
35
35
  React.createElement("path", { d: 'M13.345 30.462c-1.062 0-1.859-0.531-2.39-1.328l-9.56-16.996c-0.797-1.328-0.266-2.921 1.062-3.718 1.328-0.531 2.921 0 3.718 1.328l7.436 13.012 12.481-20.183c0.797-1.328 2.39-1.593 3.718-0.797s1.593 2.39 0.797 3.718l-14.871 23.635c-0.531 0.797-1.328 1.328-2.39 1.328z' }))))),
@@ -20,4 +20,12 @@ export declare const defaultFormFields: ({
20
20
  fieldProps: {
21
21
  placeholder: string;
22
22
  };
23
+ } | {
24
+ fieldType: string;
25
+ labelProps: {
26
+ label: string;
27
+ name: string;
28
+ rules?: undefined;
29
+ };
30
+ fieldProps?: undefined;
23
31
  })[];
@@ -30,6 +30,13 @@ export const defaultFormFields = [
30
30
  placeholder: 'emailPlaceholder',
31
31
  },
32
32
  },
33
+ {
34
+ fieldType: 'phone',
35
+ labelProps: {
36
+ label: 'phone_input',
37
+ name: 'phone',
38
+ },
39
+ },
33
40
  {
34
41
  fieldType: 'password',
35
42
  labelProps: {
@@ -16,7 +16,7 @@ export const CheckoutProvider = ({ children }) => {
16
16
  addressId: null,
17
17
  useBalance: null,
18
18
  note: '',
19
- paymentType: user?.default_payment_method || null,
19
+ paymentType: user?.payment_method || null,
20
20
  });
21
21
  const [idramForm, setIdramForm] = useState();
22
22
  const isCheckoutPage = useMemo(() => {
@@ -7,7 +7,6 @@ import { useCheckoutContext } from '../CheckoutProvider';
7
7
  import StepReview from './StepReview';
8
8
  import StepShipping from './StepShipping';
9
9
  import AccountContainer from '../../../components/AccountContainer';
10
- import Loader from '../../../components/Loader';
11
10
  //* Styles
12
11
  import CheckoutTemplateStyle from './style';
13
12
  //* Skeleton
@@ -19,7 +18,7 @@ const CheckoutTemplate = () => {
19
18
  const { hasCheckoutAddress, addressLoading } = useAddressContext();
20
19
  const { handleCheckout } = useCheckoutContext();
21
20
  const { useCart } = useAccountContext();
22
- const { items, itemsCount } = useCart();
21
+ const { items, itemsCount, loading } = useCart();
23
22
  const checkStep = {
24
23
  isShipping: !hasCheckoutAddress,
25
24
  isReview: hasCheckoutAddress,
@@ -41,9 +40,13 @@ const CheckoutTemplate = () => {
41
40
  });
42
41
  }
43
42
  }, [checkStep]);
43
+ useEffect(() => {
44
+ if (!itemsCount && !loading) {
45
+ window.location.href = '/';
46
+ }
47
+ }, [itemsCount, loading]);
44
48
  return (React.createElement(Page, { className: 'checkout use-account' },
45
- React.createElement(Loader, { className: 'checkout', pathname: window.location.pathname }),
46
- itemsCount ? (React.createElement(AccountContainer, { className: `second-version` },
49
+ React.createElement(AccountContainer, { className: `second-version` },
47
50
  React.createElement(CheckoutTemplateStyle, null,
48
51
  React.createElement(TotalCheckout, { isShipping: checkStep.isShipping, buttonProps: {
49
52
  url: false,
@@ -51,11 +54,11 @@ const CheckoutTemplate = () => {
51
54
  type: checkStep.isShipping ? 'submit' : 'button',
52
55
  text: checkStep.isShipping ? 'proceedToCheckout' : 'proceedToPayment',
53
56
  loadingButton: loadingProcessToPayment,
54
- } }, !addressLoading ? (React.createElement(React.Fragment, null,
57
+ } }, !addressLoading && itemsCount ? (React.createElement(React.Fragment, null,
55
58
  React.createElement(Sequence, { step: checkStep.isShipping ? 'shipping' : 'review' }),
56
59
  checkStep.isShipping ? React.createElement(StepShipping, { firstStepFormRef: firstStepFormRef }) : React.createElement(StepReview, { items: items }))) : (React.createElement(React.Fragment, null,
57
60
  React.createElement(SequenceSkeleton, { className: 'sequence-checkout-template' }),
58
61
  React.createElement(SkeletonAddressSelect, { className: 'address-checkout-template' }),
59
- React.createElement(SkeletonCartTemplate, null))))))) : null));
62
+ React.createElement(SkeletonCartTemplate, null))))))));
60
63
  };
61
64
  export default CheckoutTemplate;
@@ -0,0 +1,6 @@
1
+ export default Cards;
2
+ declare function Cards({ selectedPayment, setSelectedPayment }: {
3
+ selectedPayment: any;
4
+ setSelectedPayment: any;
5
+ }): React.JSX.Element;
6
+ import React from 'react';
@@ -0,0 +1,21 @@
1
+ import React, { useState } from 'react';
2
+ import { api } from '@weareconceptstudio/core';
3
+ import { useAccountContext } from '../../../AccountProvider';
4
+ import AddNewCard from '../AddNewCard';
5
+ import Card from '../Card';
6
+ import CardsStyle from './style';
7
+ const Cards = ({ selectedPayment, setSelectedPayment }) => {
8
+ const { useUser } = useAccountContext();
9
+ const { user } = useUser();
10
+ const [cards, setCards] = useState(user.cards);
11
+ const deleteCard = async (cardId) => {
12
+ await api.post('delete-card', { card_id: cardId }).then(() => {
13
+ setCards((prev) => prev.filter((item) => item.id != cardId));
14
+ });
15
+ };
16
+ return (React.createElement(CardsStyle, null,
17
+ React.createElement("div", { className: `cards-wrapper` },
18
+ React.createElement(AddNewCard, null),
19
+ cards?.map((card, index) => (React.createElement(Card, { key: index, cardOption: card, selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment, deleteCard: deleteCard }))))));
20
+ };
21
+ export default Cards;
@@ -0,0 +1,2 @@
1
+ export default CardsStyle;
2
+ declare const CardsStyle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -0,0 +1,59 @@
1
+ import styled from 'styled-components';
2
+ const CardsStyle = styled.div `
3
+ --account_payMethodsWrapMarginT: var(--sp4x);
4
+ --account_payMethodsItemDistance: var(--sp5x);
5
+
6
+ .new-card-container {
7
+ position: relative;
8
+ }
9
+
10
+ .cards-wrapper {
11
+ margin-top: var(--account_payMethodsWrapMarginT);
12
+ display: flex;
13
+ flex-wrap: wrap;
14
+ gap: var(--account_payMethodsItemDistance);
15
+ }
16
+
17
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeL}) {
18
+ --account_selectPaymentWrapMBot: var(--sp4x);
19
+ --account_payMethodsItemDistance: var(--sp4x);
20
+ --account_payMethodsWrapMarginT: var(--sp4x);
21
+ }
22
+
23
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeM}) {
24
+ --account_selectPaymentWrapMBot: var(--sp3x);
25
+ --account_payMethodsItemDistance: var(--sp3x);
26
+ --account_payMethodsWrapMarginT: var(--sp3x);
27
+ }
28
+
29
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeMMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeS}) {
30
+ --account_selectPaymentWrapMBot: var(--sp3x);
31
+ --account_payMethodsItemDistance: var(--sp3x);
32
+ --account_payMethodsWrapMarginT: var(--sp3x);
33
+ }
34
+
35
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXS}) {
36
+ --account_selectPaymentWrapMBot: var(--sp3x);
37
+ --account_payMethodsItemDistance: var(--sp2x);
38
+ --account_payMethodsWrapMarginT: var(--sp3x);
39
+ }
40
+
41
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSize}) {
42
+ --account_selectPaymentWrapMBot: var(--sp3x);
43
+ --account_payMethodsItemDistance: var(--sp3x);
44
+ --account_payMethodsWrapMarginT: var(--sp2x);
45
+ }
46
+
47
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeS}) {
48
+ --account_selectPaymentWrapMBot: var(--sp3x);
49
+ --account_payMethodsItemDistance: var(--sp2x);
50
+ --account_payMethodsWrapMarginT: var(--sp3x);
51
+ }
52
+
53
+ @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeSMin}) {
54
+ --account_selectPaymentWrapMBot: var(--sp3x);
55
+ --account_payMethodsItemDistance: var(--sp1x);
56
+ --account_payMethodsWrapMarginT: var(--sp2x);
57
+ }
58
+ `;
59
+ export default CardsStyle;
@@ -18,7 +18,7 @@ const Payment = ({ title, onClick, className }) => {
18
18
  return (React.createElement(PaymentStyle, { className: `item-container ${className || ''}` },
19
19
  React.createElement("div", { className: `change-payment-wrap` },
20
20
  React.createElement(Text, { className: `account-p account-p2 account-font-bold account-primary-color1`, text: title }),
21
- user.default_payment_method && (React.createElement(AccountButton, { text: `change`, btnType: `green-small-text`, onClick: onClick }))),
22
- user.default_payment_method ? (React.createElement(SelectedPayment, null)) : (React.createElement(PaymentMethods, { selectedPayment: checkoutData.paymentType, setSelectedPayment: setSelectedPayment }))));
21
+ user.payment_method && (React.createElement(AccountButton, { text: `change`, btnType: `green-small-text`, onClick: onClick }))),
22
+ user.payment_method ? (React.createElement(SelectedPayment, null)) : (React.createElement(PaymentMethods, { selectedPayment: checkoutData.paymentType, setSelectedPayment: setSelectedPayment }))));
23
23
  };
24
24
  export default Payment;
@@ -8,7 +8,7 @@ const PaymentMethods = ({ className, selectedPayment, setSelectedPayment }) => {
8
8
  const { paymentOptions, useUser } = useAccountContext();
9
9
  const { user } = useUser();
10
10
  const paymentMethods = useMemo(() => {
11
- return !!user.default_payment_method ? paymentOptions : [{ label: 'Card', value: 'credit_card' }, ...paymentOptions];
11
+ return !!user.payment_method ? paymentOptions : [{ label: 'Card', value: 'credit_card' }, ...paymentOptions];
12
12
  }, [user, paymentOptions]);
13
13
  return (React.createElement(PaymentMethodsStyle, { className: `payment-item-container ${className || ''}` }, paymentMethods.map((item, index) => (React.createElement(PaymentMethodItem, { key: index, item: item, selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment })))));
14
14
  };
@@ -1,36 +1,11 @@
1
- import React, { useState, useCallback } from 'react';
2
- import { api, Text, useUi } from '@weareconceptstudio/core';
3
- import { useAccountContext } from '../../../AccountProvider';
4
- import { useCheckoutContext } from '../../checkout';
5
- //* Components
6
- import { AccountButton, WarningMessageForPopup } from '../../../components';
7
- import PaymentWrap from '../PaymentWrap';
8
- //* Style
1
+ import React from 'react';
2
+ import { Text } from '@weareconceptstudio/core';
3
+ import Cards from '../Cards';
9
4
  import PaymentStyle from './style';
10
5
  const PaymentMethodsTemplate = () => {
11
- const { openPopup } = useUi();
12
- const { useUser } = useAccountContext();
13
- const { user } = useUser();
14
- const { fillCheckoutData } = useCheckoutContext();
15
- const [selectedPayment, setSelectedPayment] = useState(user.default_payment_method);
16
- //! Handle Popup
17
- const handleSuccessPopup = useCallback(() => {
18
- openPopup(React.createElement(WarningMessageForPopup, { title: 'yourSettingsHaveBeenSaved', description: 'yourSettingsHaveBeenSaved' }), {
19
- className: 'messagePopup',
20
- accountIcon: true,
21
- });
22
- }, []);
23
- const handlePaymentMethodChangeSubmit = async () => {
24
- await api.post('update-payment-method', { payment_method: selectedPayment }).then(() => {
25
- fillCheckoutData('paymentType', selectedPayment);
26
- handleSuccessPopup();
27
- });
28
- };
29
6
  return (React.createElement(PaymentStyle, null,
30
7
  React.createElement("div", { className: 'account-payment-block' },
31
8
  React.createElement(Text, { tag: `h6`, className: `account-font-medium account-primary-color1 title`, text: `myCards` }),
32
- React.createElement(PaymentWrap, { selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment }),
33
- React.createElement("div", { className: 'account-payment-btn-wrapper' },
34
- React.createElement(AccountButton, { btnType: `full-width`, text: `save`, onClick: handlePaymentMethodChangeSubmit })))));
9
+ React.createElement(Cards, null))));
35
10
  };
36
11
  export default PaymentMethodsTemplate;
@@ -1,85 +1,7 @@
1
1
  import styled from 'styled-components';
2
2
  const PaymentStyle = styled.div `
3
- --account_payMethodsWrapMarginT: var(--sp4x);
4
- --account_payButtonMarginT: var(--sp6x);
5
- --account_lineMTop: var(--sp4x);
6
- --account_lineMBottom: var(--sp4x);
7
- --account_payMethodsItemDistance: var(--sp5x);
8
- --account_radioWrapperWidth: calc(50% - var(--account_payMethodsItemDistance) / 2);
9
-
10
- .account-payment-method {
11
- margin-top: unset;
12
- }
13
-
14
3
  .title {
15
4
  font-size: var(--account_p1);
16
5
  }
17
-
18
- .flex-wrapper {
19
- margin-top: var(--account_payMethodsWrapMarginT);
20
- }
21
-
22
- .account-payment-btn-wrapper {
23
- display: flex;
24
- justify-content: end;
25
- margin-top: var(--account_payButtonMarginT);
26
- }
27
-
28
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeL}) {
29
- --account_payMethodsItemDistance: var(--sp5x);
30
- --account_payButtonMarginT: var(--sp5x);
31
- --account_payMethodsWrapMarginT: var(--sp4x);
32
- --account_lineMTop: var(--sp3x);
33
- --account_lineMBottom: var(--sp4x);
34
- }
35
-
36
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeM}) {
37
- --account_payMethodsItemDistance: var(--sp4x);
38
- --account_payButtonMarginT: var(--sp4x);
39
- --account_payMethodsWrapMarginT: var(--sp3x);
40
- --account_lineMTop: var(--sp3x);
41
- --account_lineMBottom: var(--sp4x);
42
- }
43
-
44
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeMMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeS}) {
45
- --account_payMethodsItemDistance: var(--sp3x);
46
- --account_payButtonMarginT: var(--sp4x);
47
- --account_payMethodsWrapMarginT: var(--sp3x);
48
- --account_lineMTop: var(--sp3x);
49
- --account_lineMBottom: var(--sp3x);
50
- }
51
-
52
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXS}) {
53
- --account_payMethodsItemDistance: var(--sp2x);
54
- --account_payButtonMarginT: var(--sp3x);
55
- --account_payMethodsWrapMarginT: var(--sp3x);
56
- --account_lineMTop: var(--sp2-5x);
57
- --account_lineMBottom: var(--sp2x);
58
- }
59
-
60
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSize}) {
61
- --account_payMethodsItemDistance: var(--sp3x);
62
- --account_payButtonMarginT: var(--sp3x);
63
- --account_payMethodsWrapMarginT: var(--sp2x);
64
- --account_lineMTop: var(--sp2-5x);
65
- --account_lineMBottom: var(--sp2x);
66
- }
67
-
68
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeS}) {
69
- --account_payMethodsItemDistance: var(--sp2x);
70
- --account_payButtonMarginT: var(--sp2x);
71
- --account_payMethodsWrapMarginT: var(--sp3x);
72
- --account_lineMTop: var(--sp2x);
73
- --account_lineMBottom: var(--sp3x);
74
- }
75
-
76
- @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeSMin}) {
77
- --account_payMethodsItemDistance: var(--sp1x);
78
- --account_payButtonMarginT: var(--sp1-5x);
79
- --account_payMethodsWrapMarginT: var(--sp2x);
80
- --account_lineMTop: var(--sp2x);
81
- --account_lineMBottom: var(--sp2x);
82
- --account_radioWrapperWidth: 100%;
83
- }
84
6
  `;
85
7
  export default PaymentStyle;
@@ -1,25 +1,12 @@
1
- import React, { useState } from 'react';
2
- import { api } from '@weareconceptstudio/core';
1
+ import React from 'react';
3
2
  //* Components
4
- import AddNewCard from '../AddNewCard';
5
- import Card from '../Card';
3
+ import Cards from '../Cards';
6
4
  import PaymentMethods from '../PaymentMethods';
7
5
  //* Style
8
6
  import PaymentWrapStyle from './style';
9
- import { useAccountContext } from '../../../AccountProvider';
10
7
  const PaymentWrap = ({ selectedPayment, setSelectedPayment }) => {
11
- const { useUser } = useAccountContext();
12
- const { user } = useUser();
13
- const [cards, setCards] = useState(user.cards);
14
- const deleteCard = async (cardId) => {
15
- await api.post('delete-card', { card_id: cardId }).then(() => {
16
- setCards((prev) => prev.filter((item) => item.id != cardId));
17
- });
18
- };
19
8
  return (React.createElement(PaymentWrapStyle, null,
20
- React.createElement("div", { className: `flex-wrapper` },
21
- React.createElement(AddNewCard, null),
22
- cards?.map((card, index) => (React.createElement(Card, { key: index, cardOption: card, selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment, deleteCard: deleteCard })))),
9
+ React.createElement(Cards, { selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment }),
23
10
  React.createElement("div", { className: 'line' }),
24
11
  React.createElement(PaymentMethods, { selectedPayment: selectedPayment, setSelectedPayment: setSelectedPayment })));
25
12
  };
@@ -1,15 +1,9 @@
1
1
  import styled from 'styled-components';
2
2
  const PaymentWrapStyle = styled.section `
3
3
  --account_selectPaymentWrapMBot: var(--sp5x);
4
- --account_payMethodsItemDistance: var(--sp5x);
5
- --account_payMethodsItemInternalPad: var(--sp2x);
6
4
  --account_lineMTop: var(--sp4x);
7
5
  --account_lineMBottom: var(--sp4x);
8
6
 
9
- .new-card-container {
10
- position: relative;
11
- }
12
-
13
7
  .select-payment-wrap {
14
8
  display: flex;
15
9
  flex-wrap: wrap;
@@ -18,12 +12,6 @@ const PaymentWrapStyle = styled.section `
18
12
  margin-bottom: var(--account_selectPaymentWrapMBot);
19
13
  }
20
14
 
21
- .flex-wrapper {
22
- display: flex;
23
- flex-wrap: wrap;
24
- gap: var(--account_payMethodsItemDistance);
25
- }
26
-
27
15
  .line {
28
16
  width: 100%;
29
17
  height: 2px;
@@ -33,56 +21,42 @@ const PaymentWrapStyle = styled.section `
33
21
 
34
22
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeL}) {
35
23
  --account_selectPaymentWrapMBot: var(--sp4x);
36
- --account_payMethodsItemDistance: var(--sp4x);
37
- --account_payMethodsItemInternalPad: var(--sp2x);
38
24
  --account_lineMTop: var(--sp3x);
39
25
  --account_lineMBottom: var(--sp4x);
40
26
  }
41
27
 
42
28
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeLMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeM}) {
43
29
  --account_selectPaymentWrapMBot: var(--sp3x);
44
- --account_payMethodsItemDistance: var(--sp3x);
45
- --account_payMethodsItemInternalPad: var(--sp1-5x);
46
30
  --account_lineMTop: var(--sp3x);
47
31
  --account_lineMBottom: var(--sp4x);
48
32
  }
49
33
 
50
34
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeMMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeS}) {
51
35
  --account_selectPaymentWrapMBot: var(--sp3x);
52
- --account_payMethodsItemDistance: var(--sp3x);
53
- --account_payMethodsItemInternalPad: var(--sp1-5x);
54
36
  --account_lineMTop: var(--sp3x);
55
37
  --account_lineMBottom: var(--sp3x);
56
38
  }
57
39
 
58
40
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXS}) {
59
41
  --account_selectPaymentWrapMBot: var(--sp3x);
60
- --account_payMethodsItemDistance: var(--sp2x);
61
- --account_payMethodsItemInternalPad: var(--sp1-5x);
62
42
  --account_lineMTop: var(--sp2-5x);
63
43
  --account_lineMBottom: var(--sp2x);
64
44
  }
65
45
 
66
46
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_DesktopSizeXSMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSize}) {
67
47
  --account_selectPaymentWrapMBot: var(--sp3x);
68
- --account_payMethodsItemDistance: var(--sp3x);
69
- --account_payMethodsItemInternalPad: var(--sp1-5x);
70
48
  --account_lineMTop: var(--sp2-5x);
71
49
  --account_lineMBottom: var(--sp2x);
72
50
  }
73
51
 
74
52
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeMin}) and (min-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeS}) {
75
53
  --account_selectPaymentWrapMBot: var(--sp3x);
76
- --account_payMethodsItemDistance: var(--sp2x);
77
- --account_payMethodsItemInternalPad: var(--sp1-5x);
78
54
  --account_lineMTop: var(--sp2x);
79
55
  --account_lineMBottom: var(--sp3x);
80
56
  }
81
57
 
82
58
  @media only screen and (max-width: ${(props) => props.theme.account.mediaQuery.account_TabletSizeSMin}) {
83
59
  --account_selectPaymentWrapMBot: var(--sp3x);
84
- --account_payMethodsItemDistance: var(--sp1x);
85
- --account_payMethodsItemInternalPad: var(--sp1-5x);
86
60
  --account_lineMTop: var(--sp2x);
87
61
  --account_lineMBottom: var(--sp2x);
88
62
  }
@@ -23,6 +23,6 @@ const SelectedPayment = () => {
23
23
  return paymentOptions.find((item) => item.value == checkoutData.paymentType);
24
24
  }
25
25
  }, [isCardType, checkoutData.paymentType]);
26
- return (React.createElement(PaymentMethodItem, { singlePayment: true, isCardType: isCardType, item: selectedItem }));
26
+ return selectedItem ? (React.createElement(PaymentMethodItem, { singlePayment: true, isCardType: isCardType, item: selectedItem })) : null;
27
27
  };
28
28
  export default SelectedPayment;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weareconceptstudio/account",
3
- "version": "0.3.9",
3
+ "version": "0.4.1",
4
4
  "description": "Concept Studio Account",
5
5
  "author": "Concept Studio",
6
6
  "license": "ISC",