@weareconceptstudio/account 0.4.0 → 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.
- package/dist/modules/address/AddressItem/index.js +1 -1
- package/dist/modules/auth/SignUpTemplate/utils.d.ts +8 -0
- package/dist/modules/auth/SignUpTemplate/utils.js +7 -0
- package/dist/modules/checkout/CheckoutProvider.js +1 -1
- package/dist/modules/checkout/CheckoutTemplate/index.js +21 -15
- package/dist/modules/payment/Cards/index.d.ts +6 -0
- package/dist/modules/payment/Cards/index.js +21 -0
- package/dist/modules/payment/Cards/style.d.ts +2 -0
- package/dist/modules/payment/Cards/style.js +59 -0
- package/dist/modules/payment/Payment/index.js +2 -2
- package/dist/modules/payment/PaymentMethods/index.js +1 -1
- package/dist/modules/payment/PaymentMethodsTemplate/index.js +4 -29
- package/dist/modules/payment/PaymentMethodsTemplate/style.js +0 -78
- package/dist/modules/payment/PaymentWrap/index.js +3 -16
- package/dist/modules/payment/PaymentWrap/style.js +0 -26
- package/package.json +1 -1
|
@@ -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-
|
|
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' }))))),
|
|
@@ -16,7 +16,7 @@ export const CheckoutProvider = ({ children }) => {
|
|
|
16
16
|
addressId: null,
|
|
17
17
|
useBalance: null,
|
|
18
18
|
note: '',
|
|
19
|
-
paymentType: user?.
|
|
19
|
+
paymentType: user?.payment_method || null,
|
|
20
20
|
});
|
|
21
21
|
const [idramForm, setIdramForm] = useState();
|
|
22
22
|
const isCheckoutPage = useMemo(() => {
|
|
@@ -18,7 +18,7 @@ const CheckoutTemplate = () => {
|
|
|
18
18
|
const { hasCheckoutAddress, addressLoading } = useAddressContext();
|
|
19
19
|
const { handleCheckout } = useCheckoutContext();
|
|
20
20
|
const { useCart } = useAccountContext();
|
|
21
|
-
const { items, itemsCount } = useCart();
|
|
21
|
+
const { items, itemsCount, loading } = useCart();
|
|
22
22
|
const checkStep = {
|
|
23
23
|
isShipping: !hasCheckoutAddress,
|
|
24
24
|
isReview: hasCheckoutAddress,
|
|
@@ -40,19 +40,25 @@ const CheckoutTemplate = () => {
|
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
}, [checkStep]);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
if (!itemsCount && !loading) {
|
|
45
|
+
window.location.href = '/';
|
|
46
|
+
}
|
|
47
|
+
}, [itemsCount, loading]);
|
|
48
|
+
return (React.createElement(Page, { className: 'checkout use-account' },
|
|
49
|
+
React.createElement(AccountContainer, { className: `second-version` },
|
|
50
|
+
React.createElement(CheckoutTemplateStyle, null,
|
|
51
|
+
React.createElement(TotalCheckout, { isShipping: checkStep.isShipping, buttonProps: {
|
|
52
|
+
url: false,
|
|
53
|
+
handleClick: handleCheckoutBtn,
|
|
54
|
+
type: checkStep.isShipping ? 'submit' : 'button',
|
|
55
|
+
text: checkStep.isShipping ? 'proceedToCheckout' : 'proceedToPayment',
|
|
56
|
+
loadingButton: loadingProcessToPayment,
|
|
57
|
+
} }, !addressLoading && itemsCount ? (React.createElement(React.Fragment, null,
|
|
58
|
+
React.createElement(Sequence, { step: checkStep.isShipping ? 'shipping' : 'review' }),
|
|
59
|
+
checkStep.isShipping ? React.createElement(StepShipping, { firstStepFormRef: firstStepFormRef }) : React.createElement(StepReview, { items: items }))) : (React.createElement(React.Fragment, null,
|
|
60
|
+
React.createElement(SequenceSkeleton, { className: 'sequence-checkout-template' }),
|
|
61
|
+
React.createElement(SkeletonAddressSelect, { className: 'address-checkout-template' }),
|
|
62
|
+
React.createElement(SkeletonCartTemplate, null))))))));
|
|
57
63
|
};
|
|
58
64
|
export default CheckoutTemplate;
|
|
@@ -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,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.
|
|
22
|
-
user.
|
|
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.
|
|
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
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
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(
|
|
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
|
|
2
|
-
import { api } from '@weareconceptstudio/core';
|
|
1
|
+
import React from 'react';
|
|
3
2
|
//* Components
|
|
4
|
-
import
|
|
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(
|
|
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
|
}
|