@mintmoney/react 0.1.0-alpha.2 → 0.1.0-alpha.21
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/README.md +19 -0
- package/dist/css/styles.css +51 -6
- package/dist/esm/api/checkouts.js +16 -0
- package/dist/esm/api/checkouts.js.map +1 -0
- package/dist/esm/api/generated.js +615 -0
- package/dist/esm/api/generated.js.map +1 -0
- package/dist/esm/api/index.js +15 -0
- package/dist/esm/api/index.js.map +1 -0
- package/dist/esm/api/payments.js +33 -0
- package/dist/esm/api/payments.js.map +1 -0
- package/dist/esm/api/types.js +8 -0
- package/dist/esm/api/types.js.map +1 -0
- package/dist/esm/checkout/container.js +10 -0
- package/dist/esm/checkout/container.js.map +1 -0
- package/dist/esm/checkout/index.js +44 -0
- package/dist/esm/checkout/index.js.map +1 -0
- package/dist/esm/checkout/modal.js +88 -0
- package/dist/esm/checkout/modal.js.map +1 -0
- package/dist/esm/checkout/views/amount-header.js +35 -0
- package/dist/esm/checkout/views/amount-header.js.map +1 -0
- package/dist/esm/checkout/views/back.js +8 -0
- package/dist/esm/checkout/views/back.js.map +1 -0
- package/dist/esm/checkout/views/card-intent/details.js +12 -0
- package/dist/esm/checkout/views/card-intent/details.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/currency-select.js +48 -0
- package/dist/esm/checkout/views/crypto-intent/currency-select.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/direct-details.js +26 -0
- package/dist/esm/checkout/views/crypto-intent/direct-details.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/methods.js +26 -0
- package/dist/esm/checkout/views/crypto-intent/methods.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/processing.js +40 -0
- package/dist/esm/checkout/views/crypto-intent/processing.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/success.js +41 -0
- package/dist/esm/checkout/views/crypto-intent/success.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/test-payment.js +35 -0
- package/dist/esm/checkout/views/crypto-intent/test-payment.js.map +1 -0
- package/dist/esm/checkout/views/crypto-intent/wallet-select.js +35 -0
- package/dist/esm/checkout/views/crypto-intent/wallet-select.js.map +1 -0
- package/dist/esm/checkout/views/failed.js +26 -0
- package/dist/esm/checkout/views/failed.js.map +1 -0
- package/dist/esm/checkout/views/initial.js +30 -0
- package/dist/esm/checkout/views/initial.js.map +1 -0
- package/dist/esm/checkout/views/method-select.js +23 -0
- package/dist/esm/checkout/views/method-select.js.map +1 -0
- package/dist/esm/checkout/views/restart.js +10 -0
- package/dist/esm/checkout/views/restart.js.map +1 -0
- package/dist/esm/components/buttons/async-button.js +16 -0
- package/dist/esm/components/buttons/async-button.js.map +1 -0
- package/dist/esm/components/buttons/index.js +98 -15
- package/dist/esm/components/buttons/index.js.map +1 -1
- package/dist/esm/components/buttons/use-async-button.js +44 -0
- package/dist/esm/components/buttons/use-async-button.js.map +1 -0
- package/dist/esm/components/crypto/currency-selector.js +26 -0
- package/dist/esm/components/crypto/currency-selector.js.map +1 -0
- package/dist/esm/components/crypto/default-currency-selector.js +57 -0
- package/dist/esm/components/crypto/default-currency-selector.js.map +1 -0
- package/dist/esm/components/icons/alert.js +20 -0
- package/dist/esm/components/icons/alert.js.map +1 -0
- package/dist/esm/components/icons/checkMark.js +1 -1
- package/dist/esm/components/icons/checkMark.js.map +1 -1
- package/dist/esm/components/icons/close.js +1 -1
- package/dist/esm/components/icons/close.js.map +1 -1
- package/dist/esm/components/icons/index.js +3 -0
- package/dist/esm/components/icons/index.js.map +1 -1
- package/dist/esm/components/icons/link.js +20 -0
- package/dist/esm/components/icons/link.js.map +1 -0
- package/dist/esm/components/icons/loading.js +26 -0
- package/dist/esm/components/icons/loading.js.map +1 -0
- package/dist/esm/components/inputs/index.js +32 -0
- package/dist/esm/components/inputs/index.js.map +1 -0
- package/dist/esm/components/lists/index.js +1 -1
- package/dist/esm/components/lists/index.js.map +1 -1
- package/dist/esm/components/loading/index.js.map +1 -1
- package/dist/esm/components/modals/modal-with-views.js +0 -1
- package/dist/esm/components/modals/modal-with-views.js.map +1 -1
- package/dist/esm/components/modals/modal.js +2 -2
- package/dist/esm/components/modals/modal.js.map +1 -1
- package/dist/esm/components/modals/use-modal-with-views.js +11 -2
- package/dist/esm/components/modals/use-modal-with-views.js.map +1 -1
- package/dist/esm/components/text/index.js +1 -0
- package/dist/esm/components/text/index.js.map +1 -1
- package/dist/esm/components/wallet-selector/component.js +61 -0
- package/dist/esm/components/wallet-selector/component.js.map +1 -0
- package/dist/esm/components/wallet-selector/domain.js +2 -0
- package/dist/esm/components/wallet-selector/domain.js.map +1 -0
- package/dist/esm/components/wallet-selector/helper.js +12 -0
- package/dist/esm/components/wallet-selector/helper.js.map +1 -0
- package/dist/esm/components/wallet-selector/index.js +5 -0
- package/dist/esm/components/wallet-selector/index.js.map +1 -0
- package/dist/esm/components/wallet-selector/provider.js +15 -0
- package/dist/esm/components/wallet-selector/provider.js.map +1 -0
- package/dist/esm/components/wallet-selector/schemas.js +6 -0
- package/dist/esm/components/wallet-selector/schemas.js.map +1 -0
- package/dist/esm/components/wallet-selector/store.js +134 -0
- package/dist/esm/components/wallet-selector/store.js.map +1 -0
- package/dist/esm/components/wallet-selector/util/exceptions.js +16 -0
- package/dist/esm/components/wallet-selector/util/exceptions.js.map +1 -0
- package/dist/esm/components/wallet-selector/wallets/index.js +3 -0
- package/dist/esm/components/wallet-selector/wallets/index.js.map +1 -0
- package/dist/esm/components/wallet-selector/wallets/wagmi/index.js +211 -0
- package/dist/esm/components/wallet-selector/wallets/wagmi/index.js.map +1 -0
- package/dist/esm/components/wallet-selector/wallets/wagmi/usdt-abi.json +671 -0
- package/dist/esm/config.js +10 -1
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/context.js +2 -1
- package/dist/esm/context.js.map +1 -1
- package/dist/esm/index.js +5 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/state/checkout/store.js +457 -0
- package/dist/esm/state/checkout/store.js.map +1 -0
- package/dist/esm/themes/default.js +42 -0
- package/dist/esm/themes/default.js.map +1 -1
- package/dist/esm/themes/types.js +1 -1
- package/dist/esm/themes/types.js.map +1 -1
- package/dist/esm/utils/cn.js +4 -0
- package/dist/esm/utils/cn.js.map +1 -0
- package/dist/types/api/checkouts.d.ts +9 -0
- package/dist/types/api/checkouts.d.ts.map +1 -0
- package/dist/types/api/generated.d.ts +1210 -0
- package/dist/types/api/generated.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +6 -0
- package/dist/types/api/index.d.ts.map +1 -0
- package/dist/types/api/payments.d.ts +7 -0
- package/dist/types/api/payments.d.ts.map +1 -0
- package/dist/types/api/types.d.ts +25 -0
- package/dist/types/api/types.d.ts.map +1 -0
- package/dist/types/checkout/container.d.ts +2 -0
- package/dist/types/checkout/container.d.ts.map +1 -0
- package/dist/types/checkout/index.d.ts +11 -0
- package/dist/types/checkout/index.d.ts.map +1 -0
- package/dist/types/checkout/modal.d.ts +12 -0
- package/dist/types/checkout/modal.d.ts.map +1 -0
- package/dist/types/checkout/views/amount-header.d.ts +8 -0
- package/dist/types/checkout/views/amount-header.d.ts.map +1 -0
- package/dist/types/checkout/views/back.d.ts +7 -0
- package/dist/types/checkout/views/back.d.ts.map +1 -0
- package/dist/types/checkout/views/card-intent/details.d.ts +3 -0
- package/dist/types/checkout/views/card-intent/details.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/currency-select.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/currency-select.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/direct-details.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/direct-details.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/methods.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/methods.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/processing.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/processing.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/success.d.ts +8 -0
- package/dist/types/checkout/views/crypto-intent/success.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/test-payment.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/test-payment.d.ts.map +1 -0
- package/dist/types/checkout/views/crypto-intent/wallet-select.d.ts +3 -0
- package/dist/types/checkout/views/crypto-intent/wallet-select.d.ts.map +1 -0
- package/dist/types/checkout/views/failed.d.ts +2 -0
- package/dist/types/checkout/views/failed.d.ts.map +1 -0
- package/dist/types/checkout/views/initial.d.ts +7 -0
- package/dist/types/checkout/views/initial.d.ts.map +1 -0
- package/dist/types/checkout/views/method-select.d.ts +3 -0
- package/dist/types/checkout/views/method-select.d.ts.map +1 -0
- package/dist/types/checkout/views/restart.d.ts +4 -0
- package/dist/types/checkout/views/restart.d.ts.map +1 -0
- package/dist/types/components/buttons/async-button.d.ts +14 -0
- package/dist/types/components/buttons/async-button.d.ts.map +1 -0
- package/dist/types/components/buttons/index.d.ts +21 -3
- package/dist/types/components/buttons/index.d.ts.map +1 -1
- package/dist/types/components/buttons/use-async-button.d.ts +16 -0
- package/dist/types/components/buttons/use-async-button.d.ts.map +1 -0
- package/dist/types/components/crypto/currency-selector.d.ts +11 -0
- package/dist/types/components/crypto/currency-selector.d.ts.map +1 -0
- package/dist/types/components/crypto/default-currency-selector.d.ts +9 -0
- package/dist/types/components/crypto/default-currency-selector.d.ts.map +1 -0
- package/dist/types/components/icons/alert.d.ts +7 -0
- package/dist/types/components/icons/alert.d.ts.map +1 -0
- package/dist/types/components/icons/checkMark.d.ts.map +1 -1
- package/dist/types/components/icons/close.d.ts.map +1 -1
- package/dist/types/components/icons/index.d.ts +3 -0
- package/dist/types/components/icons/index.d.ts.map +1 -1
- package/dist/types/components/icons/link.d.ts +6 -0
- package/dist/types/components/icons/link.d.ts.map +1 -0
- package/dist/types/components/icons/loading.d.ts +6 -0
- package/dist/types/components/icons/loading.d.ts.map +1 -0
- package/dist/types/components/inputs/index.d.ts +7 -0
- package/dist/types/components/inputs/index.d.ts.map +1 -0
- package/dist/types/components/lists/empty.d.ts.map +1 -1
- package/dist/types/components/lists/index.d.ts +2 -1
- package/dist/types/components/lists/index.d.ts.map +1 -1
- package/dist/types/components/loading/index.d.ts.map +1 -1
- package/dist/types/components/modals/modal-with-views.d.ts.map +1 -1
- package/dist/types/components/modals/modal.d.ts.map +1 -1
- package/dist/types/components/modals/use-modal-with-views.d.ts.map +1 -1
- package/dist/types/components/text/index.d.ts.map +1 -1
- package/dist/types/components/wallet-selector/component.d.ts +13 -0
- package/dist/types/components/wallet-selector/component.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/domain.d.ts +86 -0
- package/dist/types/components/wallet-selector/domain.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/helper.d.ts +4 -0
- package/dist/types/components/wallet-selector/helper.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/index.d.ts +7 -0
- package/dist/types/components/wallet-selector/index.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/provider.d.ts +10 -0
- package/dist/types/components/wallet-selector/provider.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/schemas.d.ts +4 -0
- package/dist/types/components/wallet-selector/schemas.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/store.d.ts +33 -0
- package/dist/types/components/wallet-selector/store.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/util/exceptions.d.ts +7 -0
- package/dist/types/components/wallet-selector/util/exceptions.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/wallets/index.d.ts +3 -0
- package/dist/types/components/wallet-selector/wallets/index.d.ts.map +1 -0
- package/dist/types/components/wallet-selector/wallets/wagmi/index.d.ts +34 -0
- package/dist/types/components/wallet-selector/wallets/wagmi/index.d.ts.map +1 -0
- package/dist/types/config.d.ts +7 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/context.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/state/checkout/store.d.ts +128 -0
- package/dist/types/state/checkout/store.d.ts.map +1 -0
- package/dist/types/themes/default.d.ts +2 -2
- package/dist/types/themes/default.d.ts.map +1 -1
- package/dist/types/themes/types.d.ts +9 -0
- package/dist/types/themes/types.d.ts.map +1 -1
- package/dist/types/utils/cn.d.ts +4 -0
- package/dist/types/utils/cn.d.ts.map +1 -0
- package/package.json +79 -62
- package/dist/esm/components/buttons/buttons.stories.js +0 -18
- package/dist/esm/components/buttons/buttons.stories.js.map +0 -1
- package/dist/esm/components/lists/lists.stories.js +0 -42
- package/dist/esm/components/lists/lists.stories.js.map +0 -1
- package/dist/esm/components/loading/loading.stories.js +0 -8
- package/dist/esm/components/loading/loading.stories.js.map +0 -1
- package/dist/esm/components/text/text.stories.js +0 -34
- package/dist/esm/components/text/text.stories.js.map +0 -1
- package/dist/esm/exports/components.js +0 -2
- package/dist/esm/exports/components.js.map +0 -1
- package/dist/esm/exports/config.js +0 -3
- package/dist/esm/exports/config.js.map +0 -1
- package/dist/esm/exports/index.js +0 -4
- package/dist/esm/exports/index.js.map +0 -1
- package/dist/esm/exports/themes.js +0 -2
- package/dist/esm/exports/themes.js.map +0 -1
- package/dist/types/components/buttons/buttons.stories.d.ts +0 -7
- package/dist/types/components/buttons/buttons.stories.d.ts.map +0 -1
- package/dist/types/components/lists/lists.stories.d.ts +0 -27
- package/dist/types/components/lists/lists.stories.d.ts.map +0 -1
- package/dist/types/components/loading/loading.stories.d.ts +0 -4
- package/dist/types/components/loading/loading.stories.d.ts.map +0 -1
- package/dist/types/components/text/text.stories.d.ts +0 -5
- package/dist/types/components/text/text.stories.d.ts.map +0 -1
- package/dist/types/exports/components.d.ts +0 -2
- package/dist/types/exports/components.d.ts.map +0 -1
- package/dist/types/exports/config.d.ts +0 -3
- package/dist/types/exports/config.d.ts.map +0 -1
- package/dist/types/exports/index.d.ts +0 -5
- package/dist/types/exports/index.d.ts.map +0 -1
- package/dist/types/exports/themes.d.ts +0 -2
- package/dist/types/exports/themes.d.ts.map +0 -1
- package/src/components/index.ts +0 -6
- package/src/components/modals/index.ts +0 -3
- package/src/config.ts +0 -29
- package/src/exports/components.ts +0 -1
- package/src/exports/config.ts +0 -2
- package/src/exports/index.ts +0 -7
- package/src/exports/themes.ts +0 -1
- package/src/index.ts +0 -0
- package/src/themes/types.ts +0 -35
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Signer } from "ethers";
|
|
2
|
+
export type Address = string;
|
|
3
|
+
export type Transfer = {
|
|
4
|
+
blockchainId?: number;
|
|
5
|
+
sendingAddress: Address;
|
|
6
|
+
destinationAddress: Address;
|
|
7
|
+
amount: number;
|
|
8
|
+
stacks?: {
|
|
9
|
+
memo?: string;
|
|
10
|
+
};
|
|
11
|
+
root?: {
|
|
12
|
+
extrinsicId?: number;
|
|
13
|
+
};
|
|
14
|
+
solana?: {
|
|
15
|
+
implementationAddress?: Address;
|
|
16
|
+
};
|
|
17
|
+
evm?: {
|
|
18
|
+
implementationAddress?: Address;
|
|
19
|
+
assetName?: string;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
export interface WalletInterface {
|
|
23
|
+
/**
|
|
24
|
+
* Name of the wallet IE Metamask
|
|
25
|
+
*/
|
|
26
|
+
name: string;
|
|
27
|
+
/**
|
|
28
|
+
* Icon for the wallet, this typically comes from the provider
|
|
29
|
+
*/
|
|
30
|
+
icon?: React.ReactNode;
|
|
31
|
+
/**
|
|
32
|
+
* URL to download the wallet
|
|
33
|
+
*/
|
|
34
|
+
url?: string;
|
|
35
|
+
/**
|
|
36
|
+
* If the wallet is installed
|
|
37
|
+
*/
|
|
38
|
+
installed: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Prompt the user to connect their wallet
|
|
41
|
+
* @returns The users first selected address
|
|
42
|
+
*/
|
|
43
|
+
connect: (networkId?: number, blockchainId?: number) => Promise<Address | null>;
|
|
44
|
+
/**
|
|
45
|
+
* Prompt the user to sign a message using their wallet
|
|
46
|
+
*/
|
|
47
|
+
signMessage: (message: string) => Promise<string | null>;
|
|
48
|
+
/**
|
|
49
|
+
* NOTE: currently supports ERC-20 approvals
|
|
50
|
+
* This fn checks if a given spenderAddress has enough allowance to spend a specified amount
|
|
51
|
+
* of tokens from the user's account.
|
|
52
|
+
* If the existing allowance is insufficient,
|
|
53
|
+
* it prompts the user to approve the contract for the desired token amount by sending an approve transaction.
|
|
54
|
+
*/
|
|
55
|
+
approveTokenTransfer?: (amount: number, spenderAddress: string, currencyAddress: string) => Promise<string | undefined>;
|
|
56
|
+
/**
|
|
57
|
+
* Execute a transaction using the users connected wallet.
|
|
58
|
+
*/
|
|
59
|
+
executeTransfer: (config: Transfer) => Promise<string | null>;
|
|
60
|
+
/**
|
|
61
|
+
* Get the users first selected address from their connected wallet
|
|
62
|
+
*/
|
|
63
|
+
getAddress: () => Promise<Address | null>;
|
|
64
|
+
/**
|
|
65
|
+
* Get the users wallet balance
|
|
66
|
+
* @returns The users wallet balance
|
|
67
|
+
*/
|
|
68
|
+
getBalance: (address: Address, tokenAddress?: Address) => Promise<{
|
|
69
|
+
uiAmount: string | null;
|
|
70
|
+
intAmount: bigint | null;
|
|
71
|
+
decimals: number | null;
|
|
72
|
+
}>;
|
|
73
|
+
/**
|
|
74
|
+
* Get the users wallet signer
|
|
75
|
+
* @returns The users wallet signer
|
|
76
|
+
*/
|
|
77
|
+
getSigner?: () => Promise<Signer>;
|
|
78
|
+
/**
|
|
79
|
+
* Render the configuration step for the wallet
|
|
80
|
+
*/
|
|
81
|
+
renderConfigureStep?: (callback: (wallet: WalletInterface | null) => void) => React.ReactNode;
|
|
82
|
+
}
|
|
83
|
+
export type WalletProviders = (() => WalletInterface | WalletInterface[] | null)[];
|
|
84
|
+
export type WithRequired<T, K extends keyof T> = T & Required<Pick<T, K>>;
|
|
85
|
+
export type PartialWith<T, K extends keyof T> = Partial<T> & Required<Pick<T, K>>;
|
|
86
|
+
//# sourceMappingURL=domain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,MAAM,MAAM,QAAQ,GAAG;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,IAAI,CAAC,EAAE;QACL,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEvB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,OAAO,EAAE,CACP,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,MAAM,KAClB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE7B;;OAEG;IACH,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEzD;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,CACrB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,KACpB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEjC;;OAEG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE9D;;OAEG;IACH,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE1C;;;OAGG;IACH,UAAU,EAAE,CACV,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,OAAO,KACnB,OAAO,CAAC;QACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;KACzB,CAAC,CAAC;IAEH;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAElC;;OAEG;IACH,mBAAmB,CAAC,EAAE,CACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI,KAC/C,KAAK,CAAC,SAAS,CAAC;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,MAC3B,eAAe,GACf,eAAe,EAAE,GACjB,IAAI,CAAC,EAAE,CAAC;AAEZ,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE1E,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GACxD,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { WithRequired } from "./domain.js";
|
|
2
|
+
export declare const ensureConfig: <Config, Keys extends keyof Config>(config: Partial<Config>, properties: Keys[]) => WithRequired<Config, Keys>;
|
|
3
|
+
export declare const normaliseName: (n: string) => string;
|
|
4
|
+
//# sourceMappingURL=helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,eAAO,MAAM,YAAY,GAAI,MAAM,EAAE,IAAI,SAAS,MAAM,MAAM,EAC5D,QAAQ,OAAO,CAAC,MAAM,CAAC,EACvB,YAAY,IAAI,EAAE,KAUD,YAAY,CAAC,MAAM,EAAE,IAAI,CAC3C,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,GAAG,MAAM,WAAwC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import WalletSelector from "./component.js";
|
|
2
|
+
import { normaliseName } from "./helper.js";
|
|
3
|
+
import type { WalletInterface, Transfer } from "./domain.js";
|
|
4
|
+
export type { WalletInterface, Transfer };
|
|
5
|
+
export { WalletSelector, normaliseName };
|
|
6
|
+
export * from "./wallets/index.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/index.tsx"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE7D,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AACzC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { WalletInterface } from "./domain.js";
|
|
3
|
+
export declare const WalletContext: React.Context<{
|
|
4
|
+
wallet: WalletInterface | null;
|
|
5
|
+
setWallet: (wallet: WalletInterface) => void;
|
|
6
|
+
}>;
|
|
7
|
+
export declare const WalletProvider: ({ children, }: {
|
|
8
|
+
children: React.ReactElement;
|
|
9
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,eAAO,MAAM,aAAa;YAChB,eAAe,GAAG,IAAI;eACnB,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI;EAI5C,CAAC;AAEH,eAAO,MAAM,cAAc,GAAI,eAE5B;IACD,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;CAC9B,4CAUA,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/schemas.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;;CAI3C"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CryptoCurrency } from "../../api/types.js";
|
|
2
|
+
import { WalletInterface, WalletProviders } from "./domain.js";
|
|
3
|
+
export declare enum ACTIONS {
|
|
4
|
+
GET_WALLETS = "GET_WALLETS",
|
|
5
|
+
GET_BALANCES = "GET_BALANCES"
|
|
6
|
+
}
|
|
7
|
+
interface Actions {
|
|
8
|
+
initialiseWallets: (initialisers: WalletProviders) => Record<string, WalletInterface>;
|
|
9
|
+
clearError: (action?: ACTIONS) => void;
|
|
10
|
+
clearLoading: (action?: ACTIONS) => void;
|
|
11
|
+
fetchBalances: (currencies: CryptoCurrency[]) => Promise<void>;
|
|
12
|
+
setBalances: (balances: Record<string, string>) => void;
|
|
13
|
+
}
|
|
14
|
+
type StoreError = {
|
|
15
|
+
id: string;
|
|
16
|
+
title: string;
|
|
17
|
+
message: string;
|
|
18
|
+
};
|
|
19
|
+
interface WalletState {
|
|
20
|
+
wallets: Record<string, WalletInterface>;
|
|
21
|
+
loading: Record<ACTIONS, boolean>;
|
|
22
|
+
error: Record<ACTIONS, StoreError | null | undefined>;
|
|
23
|
+
balances: Record<string, string>;
|
|
24
|
+
actions: Actions;
|
|
25
|
+
}
|
|
26
|
+
export declare const useWalletStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<WalletState>, "setState"> & {
|
|
27
|
+
setState(nextStateOrUpdater: WalletState | Partial<WalletState> | ((state: import("immer").WritableDraft<WalletState>) => void), shouldReplace?: false): void;
|
|
28
|
+
setState(nextStateOrUpdater: WalletState | ((state: import("immer").WritableDraft<WalletState>) => void), shouldReplace: true): void;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const useWalletActions: () => Actions;
|
|
31
|
+
export declare const useWalletBalances: () => Record<string, string>;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/components/wallet-selector/store.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE/D,oBAAY,OAAO;IACjB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;CAC9B;AAED,UAAU,OAAO;IACf,iBAAiB,EAAE,CACjB,YAAY,EAAE,eAAe,KAC1B,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACrC,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,aAAa,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;CACzD;AAWD,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACtD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,cAAc;;;EAwH1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,eAAiD,CAAC;AAC/E,eAAO,MAAM,iBAAiB,8BACa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exceptions.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet-selector/util/exceptions.ts"],"names":[],"mappings":"AAAA,8BAAsB,SAAU,SAAQ,KAAK;CAAG;AAEhD,qBAAa,gBAAiB,SAAQ,SAAS;IACpC,OAAO,EAAE,MAAM,CAAC;gBAEb,OAAO,EAAE,MAAM;CAK5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/wallet-selector/wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Connector, Config } from "@wagmi/core";
|
|
2
|
+
import { JsonRpcSigner } from "ethers";
|
|
3
|
+
import React from "react";
|
|
4
|
+
import type { Address, Transfer, WalletInterface } from "../../domain.js";
|
|
5
|
+
import type { Account, Chain, Client, Transport } from "viem";
|
|
6
|
+
export declare const transferNativeCoin: (wagmiConfig: Config, address: string, amount: number) => Promise<`0x${string}`>;
|
|
7
|
+
export declare const transferCoins: (wagmiConfig: Config, address: string, amount: number, contractAddress: string, currency: string) => Promise<`0x${string}`>;
|
|
8
|
+
export declare function clientToSigner(client: Client<Transport, Chain, Account>): JsonRpcSigner;
|
|
9
|
+
export declare class WagmiWalletInterface implements WalletInterface {
|
|
10
|
+
connector: Connector;
|
|
11
|
+
name: string;
|
|
12
|
+
icon?: string;
|
|
13
|
+
installed: boolean;
|
|
14
|
+
wagmiConfig: Config;
|
|
15
|
+
constructor(connector: Connector, wagmiConfig: Config);
|
|
16
|
+
connect(networkId?: number): Promise<`0x${string}`>;
|
|
17
|
+
signMessage(message: string): Promise<`0x${string}`>;
|
|
18
|
+
getAddress(): Promise<`0x${string}` | null>;
|
|
19
|
+
approveTokenTransfer(amount: number, spenderAddress: string, currencyAddress: string): Promise<`0x${string}` | undefined>;
|
|
20
|
+
executeTransfer(transfer: Transfer): Promise<`0x${string}`>;
|
|
21
|
+
getBalance(address: Address, tokenAddress?: Address): Promise<{
|
|
22
|
+
uiAmount: string;
|
|
23
|
+
intAmount: bigint;
|
|
24
|
+
decimals: number;
|
|
25
|
+
}>;
|
|
26
|
+
getSigner(): Promise<JsonRpcSigner>;
|
|
27
|
+
}
|
|
28
|
+
export declare const WagmiWallets: (config: Config, extraConfig?: {
|
|
29
|
+
recommendedWallets?: WalletInterface[];
|
|
30
|
+
allowedWallets?: string[];
|
|
31
|
+
excludedWallets?: string[];
|
|
32
|
+
icons: Record<string, string | React.ReactNode>;
|
|
33
|
+
}) => (() => WalletInterface[]);
|
|
34
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/wallet-selector/wallets/wagmi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EAUT,MAAM,EACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAmB,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAE9D,eAAO,MAAM,kBAAkB,GAC7B,aAAa,MAAM,EACnB,SAAS,MAAM,EACf,QAAQ,MAAM,2BAiBZ,CAAC;AA8EL,eAAO,MAAM,aAAa,GACxB,aAAa,MAAM,EACnB,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,iBAAiB,MAAM,EACvB,UAAU,MAAM,2BAmBjB,CAAC;AAEF,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,iBAUvE;AAED,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,UAAQ;IAEjB,WAAW,EAAE,MAAM,CAAC;gBAER,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM;IAO/C,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM;IAc1B,WAAW,CAAC,OAAO,EAAE,MAAM;IAI3B,UAAU;IAIV,oBAAoB,CACxB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM;IAUnB,eAAe,CAAC,QAAQ,EAAE,QAAQ;IAkBlC,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO;;;;;IAcnD,SAAS;CAKhB;AAED,eAAO,MAAM,YAAY,GAErB,QAAQ,MAAM,EACd,cAAc;IACZ,kBAAkB,CAAC,EAAE,eAAe,EAAE,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;CACjD,KACA,CAAC,MAAM,eAAe,EAAE,CA8B1B,CAAC"}
|
package/dist/types/config.d.ts
CHANGED
|
@@ -1,14 +1,21 @@
|
|
|
1
|
+
import { PaymentStatus } from "./api/types.js";
|
|
1
2
|
import { ThemeConfig } from "./themes/types.js";
|
|
3
|
+
export type CryptoCheckoutConfig = {
|
|
4
|
+
numBlockConfirmations: number;
|
|
5
|
+
paymentConfirmationStatus: PaymentStatus;
|
|
6
|
+
};
|
|
2
7
|
export type Config = {
|
|
3
8
|
publicKey: string;
|
|
4
9
|
checkoutId: string;
|
|
5
10
|
apiUrl: string;
|
|
11
|
+
cryptoCheckoutConfig: CryptoCheckoutConfig;
|
|
6
12
|
theme: ThemeConfig;
|
|
7
13
|
};
|
|
8
14
|
type ConfigOptions = {
|
|
9
15
|
apiUrl?: string;
|
|
10
16
|
checkoutId: string;
|
|
11
17
|
theme?: Partial<ThemeConfig>;
|
|
18
|
+
cryptoCheckoutConfig?: CryptoCheckoutConfig;
|
|
12
19
|
};
|
|
13
20
|
export declare const createConfig: (publicKey: string, options?: ConfigOptions) => Config;
|
|
14
21
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IACjC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,yBAAyB,EAAE,aAAa,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C,CAAC;AAIF,eAAO,MAAM,YAAY,GACvB,WAAW,MAAM,EACjB,UAAU,aAAa,KACtB,MAgBF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAKzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,QAAQ,GACT,EAAE,sBAAsB,2CAUxB;AAED,wBAAgB,kBAAkB,WAQjC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { Checkout, CheckoutMethod, CryptoCurrency, Payment, CryptoPaymentAttempt, PaymentStatus } from "../../api/types.js";
|
|
2
|
+
import { WalletInterface, Transfer } from "../../components/wallet-selector/domain.js";
|
|
3
|
+
export declare enum ACTIONS {
|
|
4
|
+
GET_CHECKOUT_CONFIG = "GET_CHECKOUT_CONFIG",
|
|
5
|
+
GET_CRYPTO_CURRENCIES = "GET_CRYPTO_CURRENCIES",
|
|
6
|
+
CREATE_PAYMENT = "CREATE_PAYMENT",
|
|
7
|
+
GET_PAYMENT = "GET_PAYMENT",
|
|
8
|
+
CREATE_PAYMENT_ATTEMPT = "CREATE_PAYMENT_ATTEMPT",
|
|
9
|
+
CREATE_TEST_PAYMENT_ATTEMPT = "CREATE_TEST_PAYMENT_ATTEMPT",
|
|
10
|
+
EXECUTE_TRANSFER = "EXECUTE_TRANSFER",
|
|
11
|
+
POLL_PAYMENT = "POLL_PAYMENT",
|
|
12
|
+
CHECK_CHAIN_STATUS = "CHECK_CHAIN_STATUS"
|
|
13
|
+
}
|
|
14
|
+
interface TransferState {
|
|
15
|
+
status: "idle" | "pending" | "failed" | "success";
|
|
16
|
+
error: string | null;
|
|
17
|
+
transactionHash: string | null;
|
|
18
|
+
chainStatus: "pending" | "confirmed" | "failed";
|
|
19
|
+
}
|
|
20
|
+
interface PollingState {
|
|
21
|
+
isPolling: boolean;
|
|
22
|
+
pollCount: number;
|
|
23
|
+
lastPollTime: number | null;
|
|
24
|
+
}
|
|
25
|
+
interface CheckoutState {
|
|
26
|
+
checkoutId: string | null;
|
|
27
|
+
selectedMethod: CheckoutMethod | null;
|
|
28
|
+
selectedCurrency: CryptoCurrency | null;
|
|
29
|
+
checkout: Checkout | null;
|
|
30
|
+
payment: Payment | null;
|
|
31
|
+
cryptoPaymentAttempt: CryptoPaymentAttempt | null;
|
|
32
|
+
methods: CheckoutMethod[] | null;
|
|
33
|
+
cryptoCurrencies: CryptoCurrency[] | null;
|
|
34
|
+
loading: Record<ACTIONS, boolean>;
|
|
35
|
+
error: Record<ACTIONS, string | null | undefined>;
|
|
36
|
+
processing: boolean;
|
|
37
|
+
transfer: TransferState;
|
|
38
|
+
polling: PollingState;
|
|
39
|
+
}
|
|
40
|
+
export declare const useCheckoutStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<CheckoutState>, "setState"> & {
|
|
41
|
+
setState(nextStateOrUpdater: CheckoutState | Partial<CheckoutState> | ((state: import("immer").WritableDraft<CheckoutState>) => void), shouldReplace?: false): void;
|
|
42
|
+
setState(nextStateOrUpdater: CheckoutState | ((state: import("immer").WritableDraft<CheckoutState>) => void), shouldReplace: true): void;
|
|
43
|
+
}>;
|
|
44
|
+
export declare const clearErrors: () => void;
|
|
45
|
+
export declare const initialiseStore: (payment: Payment) => Promise<void>;
|
|
46
|
+
export declare const createCheckoutCryptoPaymentAttempt: (currency: CryptoCurrency) => Promise<void>;
|
|
47
|
+
export declare const createSuccessfulTestPaymentAttempt: () => Promise<void>;
|
|
48
|
+
export declare const createFailedTestPaymentAttempt: () => Promise<void>;
|
|
49
|
+
export declare function getAvailableCheckoutMethods(checkout: Checkout): CheckoutMethod[];
|
|
50
|
+
export declare const getCheckoutConfig: (checkoutId: string) => Promise<void>;
|
|
51
|
+
export declare const getPayment: () => Promise<{
|
|
52
|
+
id: string;
|
|
53
|
+
currency: string;
|
|
54
|
+
created_at: string;
|
|
55
|
+
updated_at: string;
|
|
56
|
+
checkout_id: string;
|
|
57
|
+
checkout: {
|
|
58
|
+
id: string;
|
|
59
|
+
organization_id: string;
|
|
60
|
+
name: string;
|
|
61
|
+
created_at: string;
|
|
62
|
+
updated_at: string;
|
|
63
|
+
checkout_config: {
|
|
64
|
+
crypto?: {
|
|
65
|
+
enabled?: boolean;
|
|
66
|
+
assets?: {
|
|
67
|
+
chain: string;
|
|
68
|
+
asset: string;
|
|
69
|
+
asset_name: string;
|
|
70
|
+
chain_name: string;
|
|
71
|
+
}[];
|
|
72
|
+
withdrawAddress?: {
|
|
73
|
+
chain: string;
|
|
74
|
+
address: string;
|
|
75
|
+
}[];
|
|
76
|
+
};
|
|
77
|
+
card?: {
|
|
78
|
+
enabled?: boolean;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
is_live: boolean;
|
|
82
|
+
logo_url?: string;
|
|
83
|
+
};
|
|
84
|
+
organization_id: string;
|
|
85
|
+
status: "pending" | "confirming_payment" | "paid" | "failed";
|
|
86
|
+
is_test: boolean;
|
|
87
|
+
payment_attempt?: {
|
|
88
|
+
payment_id: string;
|
|
89
|
+
asset: string;
|
|
90
|
+
amount: number;
|
|
91
|
+
amount_formatted: number;
|
|
92
|
+
chain: string;
|
|
93
|
+
asset_address: string;
|
|
94
|
+
destination_address: string;
|
|
95
|
+
created_at: string;
|
|
96
|
+
updated_at: string;
|
|
97
|
+
required_confirmations: number;
|
|
98
|
+
};
|
|
99
|
+
order_id?: string | null;
|
|
100
|
+
customer_id?: string;
|
|
101
|
+
metadata?: Record<string, string | number>;
|
|
102
|
+
line_items?: {
|
|
103
|
+
name: string;
|
|
104
|
+
quantity: number;
|
|
105
|
+
image_url: string;
|
|
106
|
+
price: number;
|
|
107
|
+
}[];
|
|
108
|
+
amount: number;
|
|
109
|
+
} | null>;
|
|
110
|
+
interface TransferWalletInterface {
|
|
111
|
+
getAddress(): Promise<string | null>;
|
|
112
|
+
executeTransfer(config: Transfer): Promise<string | null>;
|
|
113
|
+
}
|
|
114
|
+
export declare const executeTransfer: (wallet: TransferWalletInterface) => Promise<string>;
|
|
115
|
+
export declare const checkChainStatus: (wallet: WalletInterface) => Promise<void>;
|
|
116
|
+
export declare const resetTransfer: () => void;
|
|
117
|
+
export declare const startPaymentPolling: (onPaymentStatusChange: (status: PaymentStatus) => void) => {
|
|
118
|
+
stop: () => void;
|
|
119
|
+
};
|
|
120
|
+
export declare const stopPaymentPolling: () => void;
|
|
121
|
+
export declare const resetCheckoutStore: () => void;
|
|
122
|
+
export declare const setCheckoutMethod: (method: CheckoutMethod) => void;
|
|
123
|
+
export declare const setProcessing: (processing: boolean) => void;
|
|
124
|
+
export declare const getProcessing: () => boolean;
|
|
125
|
+
export declare const setSelectedCurrency: (currency: CryptoCurrency | null) => void;
|
|
126
|
+
export declare const isTestMode: () => boolean;
|
|
127
|
+
export {};
|
|
128
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/state/checkout/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const defaultTheme:
|
|
1
|
+
import { DefaultTheme } from "styled-components";
|
|
2
|
+
export declare const defaultTheme: DefaultTheme;
|
|
3
3
|
//# sourceMappingURL=default.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/themes/default.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/themes/default.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,eAAO,MAAM,YAAY,EAAE,YAoG1B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import "styled-components";
|
|
1
2
|
export type BtnThemeOptions = {
|
|
2
3
|
backgroundColor: string;
|
|
3
4
|
borderColor: string;
|
|
@@ -23,11 +24,19 @@ export type ThemeConfig = {
|
|
|
23
24
|
btn: {
|
|
24
25
|
primary: BtnOptions;
|
|
25
26
|
secondary: BtnOptions;
|
|
27
|
+
success: BtnOptions;
|
|
28
|
+
error: BtnOptions;
|
|
26
29
|
};
|
|
27
30
|
icon: {
|
|
28
31
|
loader: SvgIconOptions;
|
|
29
32
|
close: SvgIconOptions;
|
|
30
33
|
check: SvgIconOptions;
|
|
34
|
+
link: SvgIconOptions;
|
|
35
|
+
alert: SvgIconOptions;
|
|
31
36
|
};
|
|
32
37
|
};
|
|
38
|
+
declare module "styled-components" {
|
|
39
|
+
interface DefaultTheme extends ThemeConfig {
|
|
40
|
+
}
|
|
41
|
+
}
|
|
33
42
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/themes/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,GAAG,EAAE;QACH,OAAO,EAAE,UAAU,CAAC;QACpB,SAAS,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/themes/types.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,GAAG,EAAE;QACH,OAAO,EAAE,UAAU,CAAC;QACpB,SAAS,EAAE,UAAU,CAAC;QACtB,OAAO,EAAE,UAAU,CAAC;QACpB,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,EAAE,cAAc,CAAC;QACvB,KAAK,EAAE,cAAc,CAAC;QACtB,KAAK,EAAE,cAAc,CAAC;QACtB,IAAI,EAAE,cAAc,CAAC;QACrB,KAAK,EAAE,cAAc,CAAC;KACvB,CAAC;CACH,CAAC;AAGF,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,YAAa,SAAQ,WAAW;KAAG;CAC9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../../src/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAE7C,eAAO,MAAM,EAAE,GAAI,GAAG,QAAQ,UAAU,EAAE,WAAiB,CAAC;AAE5D,eAAe,EAAE,CAAC"}
|