@daimo/pay 1.1.4 → 1.2.0
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/build/index.d.ts +37 -105
- package/build/package.json.js +3 -4
- package/build/package.json.js.map +1 -1
- package/build/src/assets/icons.js +2 -1
- package/build/src/assets/icons.js.map +1 -1
- package/build/src/components/Common/AmountInput/AmountInputField.js +59 -0
- package/build/src/components/Common/AmountInput/AmountInputField.js.map +1 -0
- package/build/src/components/Common/AmountInput/index.js +143 -0
- package/build/src/components/Common/AmountInput/index.js.map +1 -0
- package/build/src/components/Common/ChainSelectList/index.js +1 -1
- package/build/src/components/Common/Modal/index.js +9 -4
- package/build/src/components/Common/Modal/index.js.map +1 -1
- package/build/src/components/Common/Modal/styles.js +2 -1
- package/build/src/components/Common/Modal/styles.js.map +1 -1
- package/build/src/components/Common/OptionsList/styles.js +1 -1
- package/build/src/components/Common/OrderHeader/index.js +22 -111
- package/build/src/components/Common/OrderHeader/index.js.map +1 -1
- package/build/src/components/Common/PaymentBreakdown/index.js +48 -0
- package/build/src/components/{Pages/WaitingOther → Common/PaymentBreakdown}/index.js.map +1 -1
- package/build/src/components/Common/SwitchButton/index.js +39 -0
- package/build/src/components/Common/SwitchButton/index.js.map +1 -0
- package/build/src/components/Common/TokenChainLogo/index.js +24 -0
- package/build/src/components/Common/TokenChainLogo/index.js.map +1 -0
- package/build/src/components/DaimoPay.js +7 -2
- package/build/src/components/DaimoPay.js.map +1 -1
- package/build/src/components/DaimoPayButton/index.js +0 -1
- package/build/src/components/DaimoPayButton/index.js.map +1 -1
- package/build/src/components/DaimoPayModal/index.js +86 -26
- package/build/src/components/DaimoPayModal/index.js.map +1 -1
- package/build/src/components/Pages/PayWithToken/index.js +4 -109
- package/build/src/components/Pages/PayWithToken/index.js.map +1 -1
- package/build/src/components/Pages/SelectAmount/index.js +16 -0
- package/build/src/components/Pages/SelectAmount/index.js.map +1 -0
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js +60 -0
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +1 -0
- package/build/src/components/Pages/SelectDepositAddressChain/index.js +7 -2
- package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +1 -1
- package/build/src/components/Pages/SelectExternalAmount/index.js +62 -0
- package/build/src/components/Pages/SelectExternalAmount/index.js.map +1 -0
- package/build/src/components/Pages/SelectMethod/index.js +14 -7
- package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
- package/build/src/components/Pages/SelectToken/index.js +36 -41
- package/build/src/components/Pages/SelectToken/index.js.map +1 -1
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js +8 -2
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +1 -1
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +14 -8
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +1 -1
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +16 -0
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +1 -0
- package/build/src/components/Pages/Solana/SelectSolanaToken/index.js +37 -21
- package/build/src/components/Pages/Solana/SelectSolanaToken/index.js.map +1 -1
- package/build/src/components/Pages/WaitingExternal/index.js +53 -0
- package/build/src/components/Pages/WaitingExternal/index.js.map +1 -0
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +20 -0
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +1 -0
- package/build/src/components/Spinners/TokenLogoSpinner/index.js +13 -0
- package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +1 -0
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js +40 -0
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +1 -0
- package/build/src/components/Spinners/styles.js +32 -0
- package/build/src/components/Spinners/styles.js.map +1 -0
- package/build/src/hooks/useDepositAddressOptions.js +8 -5
- package/build/src/hooks/useDepositAddressOptions.js.map +1 -1
- package/build/src/hooks/useExternalPaymentOptions.js +7 -6
- package/build/src/hooks/useExternalPaymentOptions.js.map +1 -1
- package/build/src/hooks/useOrderUsdLimits.js +26 -0
- package/build/src/hooks/useOrderUsdLimits.js.map +1 -0
- package/build/src/hooks/usePaymentState.js +46 -14
- package/build/src/hooks/usePaymentState.js.map +1 -1
- package/build/src/hooks/useSolanaPaymentOptions.js +7 -5
- package/build/src/hooks/useSolanaPaymentOptions.js.map +1 -1
- package/build/src/hooks/useWalletPaymentOptions.js +9 -8
- package/build/src/hooks/useWalletPaymentOptions.js.map +1 -1
- package/build/src/index.js +1 -1
- package/build/src/utils/exports.js +4 -1
- package/build/src/utils/exports.js.map +1 -1
- package/build/src/utils/format.js +83 -0
- package/build/src/utils/format.js.map +1 -0
- package/build/src/utils/validateInput.js +36 -0
- package/build/src/utils/validateInput.js.map +1 -0
- package/package.json +3 -4
- package/build/src/components/Pages/WaitingOther/index.js +0 -91
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { useState, useEffect } from 'react';
|
|
3
|
-
import { usePayContext, ROUTES } from '../../DaimoPay.js';
|
|
4
|
-
import { PageContent, ModalContent, ModalH1, ModalBody } from '../../Common/Modal/styles.js';
|
|
5
|
-
import { motion, AnimatePresence } from 'framer-motion';
|
|
6
|
-
import { css } from 'styled-components';
|
|
7
|
-
import { ExternalLinkIcon } from '../../../assets/icons.js';
|
|
8
|
-
import styled from '../../../styles/styled/index.js';
|
|
9
|
-
import Button from '../../Common/Button/index.js';
|
|
10
|
-
import CircleSpinner from '../../Spinners/CircleSpinner/index.js';
|
|
11
|
-
import SquircleSpinner from '../../Spinners/SquircleSpinner/index.js';
|
|
12
|
-
|
|
13
|
-
const WaitingOther = () => {
|
|
14
|
-
const context = usePayContext();
|
|
15
|
-
const { triggerResize, paymentState, setRoute } = context;
|
|
16
|
-
const trpc = context.trpc;
|
|
17
|
-
const { selectedExternalOption, payWithExternal, paymentWaitingMessage, daimoPayOrder, } = paymentState;
|
|
18
|
-
const [externalURL, setExternalURL] = useState(null);
|
|
19
|
-
useEffect(() => {
|
|
20
|
-
const checkForSourcePayment = async () => {
|
|
21
|
-
if (!daimoPayOrder)
|
|
22
|
-
return;
|
|
23
|
-
const found = await trpc.findSourcePayment.query({
|
|
24
|
-
orderId: daimoPayOrder.id.toString(),
|
|
25
|
-
});
|
|
26
|
-
if (found) {
|
|
27
|
-
setRoute(ROUTES.CONFIRMATION);
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
const interval = setInterval(checkForSourcePayment, 1000);
|
|
31
|
-
return () => clearInterval(interval);
|
|
32
|
-
}, [daimoPayOrder?.id]);
|
|
33
|
-
useEffect(() => {
|
|
34
|
-
if (!selectedExternalOption)
|
|
35
|
-
return;
|
|
36
|
-
payWithExternal(selectedExternalOption.id).then((url) => {
|
|
37
|
-
setExternalURL(url);
|
|
38
|
-
setTimeout(() => {
|
|
39
|
-
window.open(url, "_blank");
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
}, [selectedExternalOption]);
|
|
43
|
-
const waitingMessageLength = paymentWaitingMessage?.length;
|
|
44
|
-
useEffect(() => {
|
|
45
|
-
triggerResize();
|
|
46
|
-
}, [waitingMessageLength, externalURL]);
|
|
47
|
-
if (!selectedExternalOption) {
|
|
48
|
-
return jsx(PageContent, {});
|
|
49
|
-
}
|
|
50
|
-
const optionSpinner = (() => {
|
|
51
|
-
if (selectedExternalOption.logoShape === "circle") {
|
|
52
|
-
return (jsx(CircleSpinner, { logo: jsx("img", { src: selectedExternalOption.logoURI }), loading: true, unavailable: false }));
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
return (jsx(SquircleSpinner, { logo: jsx("img", { src: selectedExternalOption.logoURI }), loading: true }));
|
|
56
|
-
}
|
|
57
|
-
})();
|
|
58
|
-
return (jsxs(PageContent, { children: [jsx(LoadingContainer, { children: jsx(AnimationContainer, { "$circle": selectedExternalOption.logoShape === "circle", children: jsx(AnimatePresence, { children: optionSpinner }) }) }), jsxs(ModalContent, { style: { marginLeft: 24, marginRight: 24 }, children: [jsx(ModalH1, { children: "Waiting for Payment" }), paymentWaitingMessage && (jsx(ModalBody, { style: { marginTop: 12, marginBottom: 12 }, children: paymentWaitingMessage }))] }), jsx(Button, { icon: jsx(ExternalLinkIcon, {}), onClick: () => {
|
|
59
|
-
if (externalURL)
|
|
60
|
-
window.open(externalURL, "_blank");
|
|
61
|
-
}, children: "Open in New Tab" })] }));
|
|
62
|
-
};
|
|
63
|
-
const LoadingContainer = styled(motion.div) `
|
|
64
|
-
display: flex;
|
|
65
|
-
align-items: center;
|
|
66
|
-
justify-content: center;
|
|
67
|
-
margin: 10px auto 16px;
|
|
68
|
-
height: 120px;
|
|
69
|
-
`;
|
|
70
|
-
const AnimationContainer = styled(motion.div) `
|
|
71
|
-
user-select: none;
|
|
72
|
-
position: relative;
|
|
73
|
-
--spinner-error-opacity: 0;
|
|
74
|
-
&:before {
|
|
75
|
-
content: "";
|
|
76
|
-
position: absolute;
|
|
77
|
-
inset: 1px;
|
|
78
|
-
opacity: 0;
|
|
79
|
-
background: var(--ck-body-color-danger);
|
|
80
|
-
${(props) => props.$circle &&
|
|
81
|
-
css `
|
|
82
|
-
inset: -5px;
|
|
83
|
-
border-radius: 50%;
|
|
84
|
-
background: none;
|
|
85
|
-
box-shadow: inset 0 0 0 3.5px var(--ck-body-color-danger);
|
|
86
|
-
`}
|
|
87
|
-
}
|
|
88
|
-
`;
|
|
89
|
-
|
|
90
|
-
export { LoadingContainer, WaitingOther as default };
|
|
91
|
-
//# sourceMappingURL=index.js.map
|