@dynamic-labs-sdk/tempo 0.0.0 → 1.41.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/README.md +97 -0
- package/dist/TempoNetworkProvider.types.d.ts +12 -0
- package/dist/TempoNetworkProvider.types.d.ts.map +1 -0
- package/dist/TempoWalletAccount.types.d.ts +12 -0
- package/dist/TempoWalletAccount.types.d.ts.map +1 -0
- package/dist/TempoWalletProvider.types.d.ts +48 -0
- package/dist/TempoWalletProvider.types.d.ts.map +1 -0
- package/dist/addTempoExtension/addTempoExtension.d.ts +24 -0
- package/dist/addTempoExtension/addTempoExtension.d.ts.map +1 -0
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/errors/InvalidTempoNetworkError/InvalidTempoNetworkError.d.ts +19 -0
- package/dist/errors/InvalidTempoNetworkError/InvalidTempoNetworkError.d.ts.map +1 -0
- package/dist/errors/InvalidTempoNetworkError/index.d.ts +2 -0
- package/dist/errors/InvalidTempoNetworkError/index.d.ts.map +1 -0
- package/dist/errors/TempoBusinessAccountTransactionNotSupportedError/TempoBusinessAccountTransactionNotSupportedError.d.ts +17 -0
- package/dist/errors/TempoBusinessAccountTransactionNotSupportedError/TempoBusinessAccountTransactionNotSupportedError.d.ts.map +1 -0
- package/dist/errors/TempoBusinessAccountTransactionNotSupportedError/index.d.ts +2 -0
- package/dist/errors/TempoBusinessAccountTransactionNotSupportedError/index.d.ts.map +1 -0
- package/dist/errors/TempoNativeTokenError/TempoNativeTokenError.d.ts +17 -0
- package/dist/errors/TempoNativeTokenError/TempoNativeTokenError.d.ts.map +1 -0
- package/dist/errors/TempoRawMessageNotUtf8Error/TempoRawMessageNotUtf8Error.d.ts +17 -0
- package/dist/errors/TempoRawMessageNotUtf8Error/TempoRawMessageNotUtf8Error.d.ts.map +1 -0
- package/dist/errors/TempoRawMessageNotUtf8Error/index.d.ts +2 -0
- package/dist/errors/TempoRawMessageNotUtf8Error/index.d.ts.map +1 -0
- package/dist/errors/TempoTransactionValidationError/TempoTransactionValidationError.d.ts +19 -0
- package/dist/errors/TempoTransactionValidationError/TempoTransactionValidationError.d.ts.map +1 -0
- package/dist/errors/TempoTransactionValidationError/index.d.ts +2 -0
- package/dist/errors/TempoTransactionValidationError/index.d.ts.map +1 -0
- package/dist/errors/TempoTypedDataNotSupportedError/TempoTypedDataNotSupportedError.d.ts +17 -0
- package/dist/errors/TempoTypedDataNotSupportedError/TempoTypedDataNotSupportedError.d.ts.map +1 -0
- package/dist/errors/TempoTypedDataNotSupportedError/index.d.ts +2 -0
- package/dist/errors/TempoTypedDataNotSupportedError/index.d.ts.map +1 -0
- package/dist/exports/index.d.ts +12 -0
- package/dist/exports/index.d.ts.map +1 -0
- package/dist/exports/waas.d.ts +9 -0
- package/dist/exports/waas.d.ts.map +1 -0
- package/dist/getTempoPublicClient/getTempoPublicClient.d.ts +28 -0
- package/dist/getTempoPublicClient/getTempoPublicClient.d.ts.map +1 -0
- package/dist/index.cjs +65 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.esm.js +57 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/isTempoNetworkProvider/isTempoNetworkProvider.d.ts +17 -0
- package/dist/isTempoNetworkProvider/isTempoNetworkProvider.d.ts.map +1 -0
- package/dist/isTempoWalletAccount/isTempoWalletAccount.d.ts +19 -0
- package/dist/isTempoWalletAccount/isTempoWalletAccount.d.ts.map +1 -0
- package/dist/isTempoWalletProvider/isTempoWalletProvider.d.ts +21 -0
- package/dist/isTempoWalletProvider/isTempoWalletProvider.d.ts.map +1 -0
- package/dist/registerTempoNetworkProviderBuilder/registerTempoNetworkProviderBuilder.d.ts +4 -0
- package/dist/registerTempoNetworkProviderBuilder/registerTempoNetworkProviderBuilder.d.ts.map +1 -0
- package/dist/sendTip20Transaction/sendTip20Transaction.d.ts +40 -0
- package/dist/sendTip20Transaction/sendTip20Transaction.d.ts.map +1 -0
- package/dist/tempoChainIds-Ce9YCriF.cjs +301 -0
- package/dist/tempoChainIds-Ce9YCriF.cjs.map +1 -0
- package/dist/tempoChainIds-Dt0jiwLT.esm.js +236 -0
- package/dist/tempoChainIds-Dt0jiwLT.esm.js.map +1 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/dist/utils/createTempoNetworkProvider/createTempoNetworkProvider.d.ts +5 -0
- package/dist/utils/createTempoNetworkProvider/createTempoNetworkProvider.d.ts.map +1 -0
- package/dist/utils/mapNetworkDataToViemChain/index.d.ts +2 -0
- package/dist/utils/mapNetworkDataToViemChain/index.d.ts.map +1 -0
- package/dist/utils/mapNetworkDataToViemChain/mapNetworkDataToViemChain.d.ts +19 -0
- package/dist/utils/mapNetworkDataToViemChain/mapNetworkDataToViemChain.d.ts.map +1 -0
- package/dist/utils/tempoChainIds/tempoChainIds.d.ts +22 -0
- package/dist/utils/tempoChainIds/tempoChainIds.d.ts.map +1 -0
- package/dist/utils/tempoConfirmTransaction/index.d.ts +2 -0
- package/dist/utils/tempoConfirmTransaction/index.d.ts.map +1 -0
- package/dist/utils/tempoConfirmTransaction/tempoConfirmTransaction.d.ts +21 -0
- package/dist/utils/tempoConfirmTransaction/tempoConfirmTransaction.d.ts.map +1 -0
- package/dist/utils/tempoTransferAmount/index.d.ts +2 -0
- package/dist/utils/tempoTransferAmount/index.d.ts.map +1 -0
- package/dist/utils/tempoTransferAmount/tempoTransferAmount.d.ts +37 -0
- package/dist/utils/tempoTransferAmount/tempoTransferAmount.d.ts.map +1 -0
- package/dist/waas/WaasTempoWalletProvider.types.d.ts +23 -0
- package/dist/waas/WaasTempoWalletProvider.types.d.ts.map +1 -0
- package/dist/waas/addWaasTempoExtension/addWaasTempoExtension.d.ts +21 -0
- package/dist/waas/addWaasTempoExtension/addWaasTempoExtension.d.ts.map +1 -0
- package/dist/waas/addWaasTempoExtension/index.d.ts +2 -0
- package/dist/waas/addWaasTempoExtension/index.d.ts.map +1 -0
- package/dist/waas/sendTempoTransaction/index.d.ts +2 -0
- package/dist/waas/sendTempoTransaction/index.d.ts.map +1 -0
- package/dist/waas/sendTempoTransaction/sendTempoTransaction.d.ts +42 -0
- package/dist/waas/sendTempoTransaction/sendTempoTransaction.d.ts.map +1 -0
- package/dist/waas/utils/assertValidTempoTransactionCalls/assertValidTempoTransactionCalls.d.ts +18 -0
- package/dist/waas/utils/assertValidTempoTransactionCalls/assertValidTempoTransactionCalls.d.ts.map +1 -0
- package/dist/waas/utils/assertValidTempoTransactionCalls/index.d.ts +2 -0
- package/dist/waas/utils/assertValidTempoTransactionCalls/index.d.ts.map +1 -0
- package/dist/waas/utils/assertValidTempoTransactionRequest/assertValidTempoTransactionRequest.d.ts +41 -0
- package/dist/waas/utils/assertValidTempoTransactionRequest/assertValidTempoTransactionRequest.d.ts.map +1 -0
- package/dist/waas/utils/assertValidTempoTransactionRequest/index.d.ts +3 -0
- package/dist/waas/utils/assertValidTempoTransactionRequest/index.d.ts.map +1 -0
- package/dist/waas/utils/createViemWalletClientForWaasTempo/createViemWalletClientForWaasTempo.d.ts +41 -0
- package/dist/waas/utils/createViemWalletClientForWaasTempo/createViemWalletClientForWaasTempo.d.ts.map +1 -0
- package/dist/waas/utils/createViemWalletClientForWaasTempo/index.d.ts +2 -0
- package/dist/waas/utils/createViemWalletClientForWaasTempo/index.d.ts.map +1 -0
- package/dist/waas/utils/createWalletProviderForWaasTempo/createWalletProviderForWaasTempo.d.ts +23 -0
- package/dist/waas/utils/createWalletProviderForWaasTempo/createWalletProviderForWaasTempo.d.ts.map +1 -0
- package/dist/waas/utils/createWalletProviderForWaasTempo/index.d.ts +2 -0
- package/dist/waas/utils/createWalletProviderForWaasTempo/index.d.ts.map +1 -0
- package/dist/waas/utils/isBusinessAccountWalletAccount/index.d.ts +2 -0
- package/dist/waas/utils/isBusinessAccountWalletAccount/index.d.ts.map +1 -0
- package/dist/waas/utils/isBusinessAccountWalletAccount/isBusinessAccountWalletAccount.d.ts +23 -0
- package/dist/waas/utils/isBusinessAccountWalletAccount/isBusinessAccountWalletAccount.d.ts.map +1 -0
- package/dist/waas/utils/serializeTempoTransactionForWaas/index.d.ts +3 -0
- package/dist/waas/utils/serializeTempoTransactionForWaas/index.d.ts.map +1 -0
- package/dist/waas/utils/serializeTempoTransactionForWaas/serializeTempoTransactionForWaas.d.ts +57 -0
- package/dist/waas/utils/serializeTempoTransactionForWaas/serializeTempoTransactionForWaas.d.ts.map +1 -0
- package/dist/waas/utils/signMessage/index.d.ts +2 -0
- package/dist/waas/utils/signMessage/index.d.ts.map +1 -0
- package/dist/waas/utils/signMessage/signMessage.d.ts +38 -0
- package/dist/waas/utils/signMessage/signMessage.d.ts.map +1 -0
- package/dist/waas/utils/signRawMessage/index.d.ts +2 -0
- package/dist/waas/utils/signRawMessage/index.d.ts.map +1 -0
- package/dist/waas/utils/signRawMessage/signRawMessage.d.ts +37 -0
- package/dist/waas/utils/signRawMessage/signRawMessage.d.ts.map +1 -0
- package/dist/waas.cjs +758 -0
- package/dist/waas.cjs.map +1 -0
- package/dist/waas.esm.js +754 -0
- package/dist/waas.esm.js.map +1 -0
- package/package.json +46 -1
package/README.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# @dynamic-labs-sdk/tempo
|
|
2
|
+
|
|
3
|
+
This package contains the Tempo integration for the Dynamic SDK.
|
|
4
|
+
|
|
5
|
+
Tempo is an EVM-compatible chain with no native token — fees and transfers are
|
|
6
|
+
paid in TIP-20 stablecoins.
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```sh
|
|
11
|
+
npm install @dynamic-labs-sdk/tempo
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import { createDynamicClient } from '@dynamic-labs-sdk/client';
|
|
18
|
+
import { addTempoExtension } from '@dynamic-labs-sdk/tempo';
|
|
19
|
+
|
|
20
|
+
const dynamicClient = createDynamicClient({
|
|
21
|
+
environmentId: '123',
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
addTempoExtension(dynamicClient);
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Once the extension is registered, the package exposes helpers for working with
|
|
28
|
+
Tempo wallets and networks:
|
|
29
|
+
|
|
30
|
+
- `isTempoWalletAccount` / `isTempoWalletProvider` / `isTempoNetworkProvider` —
|
|
31
|
+
type guards that narrow a value to its Tempo-specific type.
|
|
32
|
+
- `getTempoPublicClient` — returns a viem `PublicClient` for the active Tempo
|
|
33
|
+
network.
|
|
34
|
+
- `sendTip20Transaction` — sends a TIP-20 token transfer (Tempo has no native
|
|
35
|
+
token, so a token contract address is always required).
|
|
36
|
+
|
|
37
|
+
```ts
|
|
38
|
+
import {
|
|
39
|
+
getTempoPublicClient,
|
|
40
|
+
isTempoWalletAccount,
|
|
41
|
+
sendTip20Transaction,
|
|
42
|
+
} from '@dynamic-labs-sdk/tempo';
|
|
43
|
+
|
|
44
|
+
if (isTempoWalletAccount(walletAccount)) {
|
|
45
|
+
const publicClient = await getTempoPublicClient(
|
|
46
|
+
{ walletAccount },
|
|
47
|
+
dynamicClient
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
const blockNumber = await publicClient.getBlockNumber();
|
|
51
|
+
|
|
52
|
+
const transactionHash = await sendTip20Transaction({
|
|
53
|
+
amount: '1.5',
|
|
54
|
+
to: '0xRecipient',
|
|
55
|
+
tokenAddress: '0xTip20Token',
|
|
56
|
+
walletClient,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Embedded wallets
|
|
62
|
+
|
|
63
|
+
Embedded wallet support is available from the `/waas` entry point:
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
import { addTempoExtension } from '@dynamic-labs-sdk/tempo';
|
|
67
|
+
import { addWaasTempoExtension } from '@dynamic-labs-sdk/tempo/waas';
|
|
68
|
+
|
|
69
|
+
addTempoExtension(dynamicClient);
|
|
70
|
+
addWaasTempoExtension(dynamicClient);
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Embedded Tempo wallets can sign messages, transfer TIP-20 tokens with
|
|
74
|
+
`transferAmount`, and send transactions with a viem wallet client from the
|
|
75
|
+
wallet provider's `createViemWalletClient`. Typed data signing is not supported
|
|
76
|
+
yet.
|
|
77
|
+
|
|
78
|
+
### Sending a Tempo transaction
|
|
79
|
+
|
|
80
|
+
Use `sendTempoTransaction` for transactions that use Tempo-only fields: batched
|
|
81
|
+
calls, a fee token, a nonce key, or a validity window.
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
import { sendTempoTransaction } from '@dynamic-labs-sdk/tempo/waas';
|
|
85
|
+
|
|
86
|
+
const { transactionHash } = await sendTempoTransaction({
|
|
87
|
+
calls: [
|
|
88
|
+
{ data: transferData, to: tokenAddress },
|
|
89
|
+
{ data: approveData, to: tokenAddress },
|
|
90
|
+
],
|
|
91
|
+
feeToken: tokenAddress,
|
|
92
|
+
walletAccount,
|
|
93
|
+
});
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Gas defaults to a buffered estimate, and the nonce is the next nonce on the
|
|
97
|
+
requested nonce lane.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { BaseNetworkProvider } from '@dynamic-labs-sdk/client/core';
|
|
2
|
+
/**
|
|
3
|
+
* Network provider for Tempo EVM chain.
|
|
4
|
+
* Tempo is an EVM-compatible blockchain with no native token.
|
|
5
|
+
*/
|
|
6
|
+
export type TempoNetworkProvider = BaseNetworkProvider<'TEMPO'>;
|
|
7
|
+
declare global {
|
|
8
|
+
interface NetworkProviderMap {
|
|
9
|
+
TEMPO: TempoNetworkProvider;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=TempoNetworkProvider.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoNetworkProvider.types.d.ts","sourceRoot":"","sources":["../src/TempoNetworkProvider.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAEhE,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,kBAAkB;QAC1B,KAAK,EAAE,oBAAoB,CAAC;KAC7B;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { BaseWalletAccount } from '@dynamic-labs-sdk/client/core';
|
|
2
|
+
/**
|
|
3
|
+
* Wallet account for Tempo EVM chain.
|
|
4
|
+
* Represents a user's account on the Tempo blockchain.
|
|
5
|
+
*/
|
|
6
|
+
export type TempoWalletAccount = BaseWalletAccount<'TEMPO'>;
|
|
7
|
+
declare global {
|
|
8
|
+
interface WalletAccountMap {
|
|
9
|
+
TEMPO: TempoWalletAccount;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=TempoWalletAccount.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoWalletAccount.types.d.ts","sourceRoot":"","sources":["../src/TempoWalletAccount.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAE5D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,gBAAgB;QACxB,KAAK,EAAE,kBAAkB,CAAC;KAC3B;CACF"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { WalletAccount } from '@dynamic-labs-sdk/client';
|
|
2
|
+
import type { WalletProvider } from '@dynamic-labs-sdk/client/core';
|
|
3
|
+
import type { Account, Chain, HttpTransportConfig, Transport, WalletClient, WalletClientConfig } from 'viem';
|
|
4
|
+
/**
|
|
5
|
+
* Creates a viem wallet client for a Tempo wallet account.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const walletClient = await walletProvider.createViemWalletClient({
|
|
10
|
+
* walletAccount,
|
|
11
|
+
* });
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* @see TempoWalletProvider
|
|
15
|
+
* @see sendTip20Transaction
|
|
16
|
+
*/
|
|
17
|
+
export type CreateTempoViemWalletClient = (args: {
|
|
18
|
+
httpTransportConfig?: HttpTransportConfig;
|
|
19
|
+
viemWalletClientConfig?: Omit<WalletClientConfig, 'account' | 'chain' | 'transport'>;
|
|
20
|
+
walletAccount: WalletAccount;
|
|
21
|
+
}) => Promise<WalletClient<Transport, Chain, Account>>;
|
|
22
|
+
/**
|
|
23
|
+
* Wallet provider for Tempo EVM chain.
|
|
24
|
+
* Tempo is an EVM-compatible blockchain with no native token;
|
|
25
|
+
* fees are paid in TIP-20 stablecoins.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* if (isTempoWalletProvider(provider)) {
|
|
30
|
+
* const tempoProvider: TempoWalletProvider = provider;
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @see {@link isTempoWalletProvider}
|
|
35
|
+
* @see {@link sendTip20Transaction}
|
|
36
|
+
*/
|
|
37
|
+
export type TempoWalletProvider = WalletProvider & {
|
|
38
|
+
/** Chain identifier for Tempo. */
|
|
39
|
+
chain: 'TEMPO';
|
|
40
|
+
/** Creates a viem wallet client for a Tempo wallet account, when the provider supports it. */
|
|
41
|
+
createViemWalletClient?: CreateTempoViemWalletClient;
|
|
42
|
+
/**
|
|
43
|
+
* Tempo has no native token — fees are paid in TIP-20 stablecoins.
|
|
44
|
+
* This provider always supports fee token selection.
|
|
45
|
+
*/
|
|
46
|
+
supportsFeeTokenSelection: true;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=TempoWalletProvider.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoWalletProvider.types.d.ts","sourceRoot":"","sources":["../src/TempoWalletProvider.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,kBAAkB,EACnB,MAAM,MAAM,CAAC;AAEd;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,IAAI,EAAE;IAC/C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,sBAAsB,CAAC,EAAE,IAAI,CAC3B,kBAAkB,EAClB,SAAS,GAAG,OAAO,GAAG,WAAW,CAClC,CAAC;IACF,aAAa,EAAE,aAAa,CAAC;CAC9B,KAAK,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IACjD,kCAAkC;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,8FAA8F;IAC9F,sBAAsB,CAAC,EAAE,2BAA2B,CAAC;IACrD;;;OAGG;IACH,yBAAyB,EAAE,IAAI,CAAC;CACjC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** Registry key for the Tempo chain extension registered by addTempoExtension. */
|
|
2
|
+
export declare const TEMPO_EXTENSION_KEY = "tempo";
|
|
3
|
+
/**
|
|
4
|
+
* Registers the Tempo chain extension with the Dynamic client.
|
|
5
|
+
* Enables support for Tempo networks (chain IDs 4217, 42429, 42431).
|
|
6
|
+
* Calling it more than once is safe: later calls do nothing.
|
|
7
|
+
*
|
|
8
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple clients.
|
|
9
|
+
* @returns Nothing. The extension is registered on the client.
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import { createDynamicClient } from '@dynamic-labs-sdk/client';
|
|
13
|
+
* import { addTempoExtension } from '@dynamic-labs-sdk/tempo';
|
|
14
|
+
*
|
|
15
|
+
* const dynamicClient = createDynamicClient({ environmentId: '123' });
|
|
16
|
+
*
|
|
17
|
+
* addTempoExtension(dynamicClient);
|
|
18
|
+
* ```
|
|
19
|
+
* @see getTempoPublicClient
|
|
20
|
+
* @see isTempoWalletAccount
|
|
21
|
+
* @notInstrumented
|
|
22
|
+
*/
|
|
23
|
+
export declare const addTempoExtension: (client?: import("@dynamic-labs-sdk/client").DynamicClient) => void;
|
|
24
|
+
//# sourceMappingURL=addTempoExtension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addTempoExtension.d.ts","sourceRoot":"","sources":["../../src/addTempoExtension/addTempoExtension.ts"],"names":[],"mappings":"AAQA,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,iBAAiB,iEAAkC,IAO/D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,WAAW,UAA0B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when a Tempo wallet provider is asked to activate a network that is
|
|
4
|
+
* not a Tempo network.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* throw new InvalidTempoNetworkError({ networkId: '1' });
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @see isTempoChainId
|
|
12
|
+
* @see addWaasTempoExtension
|
|
13
|
+
*/
|
|
14
|
+
export declare class InvalidTempoNetworkError extends BaseError {
|
|
15
|
+
constructor({ networkId }: {
|
|
16
|
+
networkId: string | number;
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=InvalidTempoNetworkError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InvalidTempoNetworkError.d.ts","sourceRoot":"","sources":["../../../src/errors/InvalidTempoNetworkError/InvalidTempoNetworkError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,wBAAyB,SAAQ,SAAS;gBACzC,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;CAS1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/InvalidTempoNetworkError/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when a business-account Tempo wallet is asked to sign a transaction.
|
|
4
|
+
* Business-account transactions need a signing-quorum intent, which the
|
|
5
|
+
* embedded wallet signer does not support for Tempo transactions yet.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* throw new TempoBusinessAccountTransactionNotSupportedError();
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @see addWaasTempoExtension
|
|
13
|
+
*/
|
|
14
|
+
export declare class TempoBusinessAccountTransactionNotSupportedError extends BaseError {
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=TempoBusinessAccountTransactionNotSupportedError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoBusinessAccountTransactionNotSupportedError.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoBusinessAccountTransactionNotSupportedError/TempoBusinessAccountTransactionNotSupportedError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,gDAAiD,SAAQ,SAAS;;CAW9E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoBusinessAccountTransactionNotSupportedError/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gDAAgD,EAAE,MAAM,oDAAoD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when a Tempo transaction is attempted without a TIP-20 token contract address.
|
|
4
|
+
* Tempo has no native token, so all value transfers require a token contract address.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* throw new TempoNativeTokenError();
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @see sendTip20Transaction
|
|
12
|
+
* @see TempoWalletProvider
|
|
13
|
+
*/
|
|
14
|
+
export declare class TempoNativeTokenError extends BaseError {
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=TempoNativeTokenError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoNativeTokenError.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoNativeTokenError/TempoNativeTokenError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAsB,SAAQ,SAAS;;CAWnD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when a raw message passed to a Tempo embedded wallet is not valid
|
|
4
|
+
* UTF-8 text. The embedded wallet signs text messages, so bytes that cannot be
|
|
5
|
+
* decoded and re-encoded unchanged would be signed as different bytes.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* throw new TempoRawMessageNotUtf8Error();
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @see createWalletProviderForWaasTempo
|
|
13
|
+
*/
|
|
14
|
+
export declare class TempoRawMessageNotUtf8Error extends BaseError {
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=TempoRawMessageNotUtf8Error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoRawMessageNotUtf8Error.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoRawMessageNotUtf8Error/TempoRawMessageNotUtf8Error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,2BAA4B,SAAQ,SAAS;;CAWzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoRawMessageNotUtf8Error/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when a Tempo transaction fails validation before signing, for
|
|
4
|
+
* example because of a malformed address or non-hex call data.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* throw new TempoTransactionValidationError({ reason: 'malformed call data' });
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @see createWalletProviderForWaasTempo
|
|
12
|
+
* @see addWaasTempoExtension
|
|
13
|
+
*/
|
|
14
|
+
export declare class TempoTransactionValidationError extends BaseError {
|
|
15
|
+
constructor({ reason }: {
|
|
16
|
+
reason: string;
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=TempoTransactionValidationError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoTransactionValidationError.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoTransactionValidationError/TempoTransactionValidationError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,+BAAgC,SAAQ,SAAS;gBAChD,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE;CAS3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoTransactionValidationError/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseError } from '@dynamic-labs-sdk/client';
|
|
2
|
+
/**
|
|
3
|
+
* Thrown when typed data is signed with a Tempo embedded wallet, which does
|
|
4
|
+
* not support it yet.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* throw new TempoTypedDataNotSupportedError();
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @see createWalletProviderForWaasTempo
|
|
12
|
+
* @see addWaasTempoExtension
|
|
13
|
+
*/
|
|
14
|
+
export declare class TempoTypedDataNotSupportedError extends BaseError {
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=TempoTypedDataNotSupportedError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TempoTypedDataNotSupportedError.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoTypedDataNotSupportedError/TempoTypedDataNotSupportedError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,+BAAgC,SAAQ,SAAS;;CAW7D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/TempoTypedDataNotSupportedError/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { TempoNativeTokenError } from '../errors/TempoNativeTokenError/TempoNativeTokenError';
|
|
2
|
+
export { addTempoExtension } from '../addTempoExtension/addTempoExtension';
|
|
3
|
+
export { getTempoPublicClient } from '../getTempoPublicClient/getTempoPublicClient';
|
|
4
|
+
export { isTempoNetworkProvider } from '../isTempoNetworkProvider/isTempoNetworkProvider';
|
|
5
|
+
export { isTempoWalletAccount } from '../isTempoWalletAccount/isTempoWalletAccount';
|
|
6
|
+
export { isTempoWalletProvider } from '../isTempoWalletProvider/isTempoWalletProvider';
|
|
7
|
+
export { sendTip20Transaction } from '../sendTip20Transaction/sendTip20Transaction';
|
|
8
|
+
export type { TempoNetworkProvider } from '../TempoNetworkProvider.types';
|
|
9
|
+
export type { TempoWalletAccount } from '../TempoWalletAccount.types';
|
|
10
|
+
export type { TempoWalletProvider } from '../TempoWalletProvider.types';
|
|
11
|
+
export { TEMPO_CHAIN_IDS, isTempoChainId } from '../utils/tempoChainIds/tempoChainIds';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exports/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,YAAY,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { sendTempoTransaction } from '../waas/sendTempoTransaction/sendTempoTransaction';
|
|
2
|
+
export { addWaasTempoExtension } from '../waas/addWaasTempoExtension/addWaasTempoExtension';
|
|
3
|
+
export { InvalidTempoNetworkError } from '../errors/InvalidTempoNetworkError';
|
|
4
|
+
export { TempoTransactionValidationError } from '../errors/TempoTransactionValidationError';
|
|
5
|
+
export { TempoTypedDataNotSupportedError } from '../errors/TempoTypedDataNotSupportedError';
|
|
6
|
+
export type { TempoTransactionRequest } from '../waas/utils/assertValidTempoTransactionRequest';
|
|
7
|
+
export type { TempoTransactionCall } from '../waas/utils/serializeTempoTransactionForWaas';
|
|
8
|
+
export type { WaasTempoWalletProvider } from '../waas/WaasTempoWalletProvider.types';
|
|
9
|
+
//# sourceMappingURL=waas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waas.d.ts","sourceRoot":"","sources":["../../src/exports/waas.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAC5F,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAC5F,YAAY,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAChG,YAAY,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AAC3F,YAAY,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type WalletAccount } from '@dynamic-labs-sdk/client';
|
|
2
|
+
import type { Chain, PublicClient, Transport } from 'viem';
|
|
3
|
+
type GetTempoPublicClientParams = {
|
|
4
|
+
walletAccount: WalletAccount;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Returns a viem PublicClient for the active Tempo network.
|
|
8
|
+
* Network data (RPC URL, chain config) is resolved from the 'TEMPO' network
|
|
9
|
+
* registry at runtime — not from EVM.
|
|
10
|
+
*
|
|
11
|
+
* @param params.walletAccount - Must have chain === 'TEMPO'.
|
|
12
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple clients.
|
|
13
|
+
* @returns A viem public client connected to the wallet account's active Tempo network.
|
|
14
|
+
* @throws If no network data is found for the wallet account.
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* if (isTempoWalletAccount(walletAccount)) {
|
|
18
|
+
* const publicClient = await getTempoPublicClient({ walletAccount });
|
|
19
|
+
* const blockNumber = await publicClient.getBlockNumber();
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
* @see isTempoWalletAccount
|
|
23
|
+
* @see sendTip20Transaction
|
|
24
|
+
* @notInstrumented
|
|
25
|
+
*/
|
|
26
|
+
export declare const getTempoPublicClient: ({ walletAccount }: GetTempoPublicClientParams, client?: import("@dynamic-labs-sdk/client").DynamicClient) => Promise<PublicClient<Transport, Chain>>;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=getTempoPublicClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTempoPublicClient.d.ts","sourceRoot":"","sources":["../../src/getTempoPublicClient/getTempoPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAK3D,KAAK,0BAA0B,GAAG;IAChC,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,sBACZ,0BAA0B,gEAE5C,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAYxC,CAAC"}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
const require_tempoChainIds = require('./tempoChainIds-Ce9YCriF.cjs');
|
|
2
|
+
let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
|
|
3
|
+
let _dynamic_labs_sdk_client_core = require("@dynamic-labs-sdk/client/core");
|
|
4
|
+
|
|
5
|
+
//#region src/addTempoExtension/addTempoExtension.ts
|
|
6
|
+
/** Registry key for the Tempo chain extension registered by addTempoExtension. */
|
|
7
|
+
const TEMPO_EXTENSION_KEY = "tempo";
|
|
8
|
+
/**
|
|
9
|
+
* Registers the Tempo chain extension with the Dynamic client.
|
|
10
|
+
* Enables support for Tempo networks (chain IDs 4217, 42429, 42431).
|
|
11
|
+
* Calling it more than once is safe: later calls do nothing.
|
|
12
|
+
*
|
|
13
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple clients.
|
|
14
|
+
* @returns Nothing. The extension is registered on the client.
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* import { createDynamicClient } from '@dynamic-labs-sdk/client';
|
|
18
|
+
* import { addTempoExtension } from '@dynamic-labs-sdk/tempo';
|
|
19
|
+
*
|
|
20
|
+
* const dynamicClient = createDynamicClient({ environmentId: '123' });
|
|
21
|
+
*
|
|
22
|
+
* addTempoExtension(dynamicClient);
|
|
23
|
+
* ```
|
|
24
|
+
* @see getTempoPublicClient
|
|
25
|
+
* @see isTempoWalletAccount
|
|
26
|
+
* @notInstrumented
|
|
27
|
+
*/
|
|
28
|
+
const addTempoExtension = (client = (0, _dynamic_labs_sdk_client_core.getDefaultClient)()) => {
|
|
29
|
+
if ((0, _dynamic_labs_sdk_client_core.hasExtension)({ extensionKey: TEMPO_EXTENSION_KEY }, client)) return;
|
|
30
|
+
(0, _dynamic_labs_sdk_client_core.registerExtension)({ extensionKey: TEMPO_EXTENSION_KEY }, client);
|
|
31
|
+
require_tempoChainIds.registerTempoNetworkProviderBuilder(client);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/isTempoNetworkProvider/isTempoNetworkProvider.ts
|
|
36
|
+
/**
|
|
37
|
+
* Type guard — returns true if the network provider is for the Tempo chain.
|
|
38
|
+
*
|
|
39
|
+
* @param provider - The network provider to check.
|
|
40
|
+
* @returns Whether the network provider is a Tempo network provider.
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* const tempoProviders = getNetworkProviders().filter(isTempoNetworkProvider);
|
|
44
|
+
* ```
|
|
45
|
+
* @see isTempoWalletAccount
|
|
46
|
+
* @see isTempoWalletProvider
|
|
47
|
+
* @notInstrumented
|
|
48
|
+
*/
|
|
49
|
+
const isTempoNetworkProvider = (provider) => provider.chain === "TEMPO";
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/exports/index.ts
|
|
53
|
+
(0, _dynamic_labs_sdk_assert_package_version.assertPackageVersion)(require_tempoChainIds.name, require_tempoChainIds.version);
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
exports.TEMPO_CHAIN_IDS = require_tempoChainIds.TEMPO_CHAIN_IDS;
|
|
57
|
+
exports.TempoNativeTokenError = require_tempoChainIds.TempoNativeTokenError;
|
|
58
|
+
exports.addTempoExtension = addTempoExtension;
|
|
59
|
+
exports.getTempoPublicClient = require_tempoChainIds.getTempoPublicClient;
|
|
60
|
+
exports.isTempoChainId = require_tempoChainIds.isTempoChainId;
|
|
61
|
+
exports.isTempoNetworkProvider = isTempoNetworkProvider;
|
|
62
|
+
exports.isTempoWalletAccount = require_tempoChainIds.isTempoWalletAccount;
|
|
63
|
+
exports.isTempoWalletProvider = require_tempoChainIds.isTempoWalletProvider;
|
|
64
|
+
exports.sendTip20Transaction = require_tempoChainIds.sendTip20Transaction;
|
|
65
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["packageName","packageVersion"],"sources":["../src/addTempoExtension/addTempoExtension.ts","../src/isTempoNetworkProvider/isTempoNetworkProvider.ts","../src/exports/index.ts"],"sourcesContent":["import {\n getDefaultClient,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\n\nimport { registerTempoNetworkProviderBuilder } from '../registerTempoNetworkProviderBuilder/registerTempoNetworkProviderBuilder';\n\n/** Registry key for the Tempo chain extension registered by addTempoExtension. */\nexport const TEMPO_EXTENSION_KEY = 'tempo';\n\n/**\n * Registers the Tempo chain extension with the Dynamic client.\n * Enables support for Tempo networks (chain IDs 4217, 42429, 42431).\n * Calling it more than once is safe: later calls do nothing.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple clients.\n * @returns Nothing. The extension is registered on the client.\n * @example\n * ```ts\n * import { createDynamicClient } from '@dynamic-labs-sdk/client';\n * import { addTempoExtension } from '@dynamic-labs-sdk/tempo';\n *\n * const dynamicClient = createDynamicClient({ environmentId: '123' });\n *\n * addTempoExtension(dynamicClient);\n * ```\n * @see getTempoPublicClient\n * @see isTempoWalletAccount\n * @notInstrumented\n */\nexport const addTempoExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client);\n registerTempoNetworkProviderBuilder(client);\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TempoNetworkProvider } from '../TempoNetworkProvider.types';\n\n/**\n * Type guard — returns true if the network provider is for the Tempo chain.\n *\n * @param provider - The network provider to check.\n * @returns Whether the network provider is a Tempo network provider.\n * @example\n * ```ts\n * const tempoProviders = getNetworkProviders().filter(isTempoNetworkProvider);\n * ```\n * @see isTempoWalletAccount\n * @see isTempoWalletProvider\n * @notInstrumented\n */\nexport const isTempoNetworkProvider = (\n provider: NetworkProvider\n): provider is TempoNetworkProvider => provider.chain === 'TEMPO';\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { TempoNativeTokenError } from '../errors/TempoNativeTokenError/TempoNativeTokenError';\nexport { addTempoExtension } from '../addTempoExtension/addTempoExtension';\nexport { getTempoPublicClient } from '../getTempoPublicClient/getTempoPublicClient';\nexport { isTempoNetworkProvider } from '../isTempoNetworkProvider/isTempoNetworkProvider';\nexport { isTempoWalletAccount } from '../isTempoWalletAccount/isTempoWalletAccount';\nexport { isTempoWalletProvider } from '../isTempoWalletProvider/isTempoWalletProvider';\nexport { sendTip20Transaction } from '../sendTip20Transaction/sendTip20Transaction';\nexport type { TempoNetworkProvider } from '../TempoNetworkProvider.types';\nexport type { TempoWalletAccount } from '../TempoWalletAccount.types';\nexport type { TempoWalletProvider } from '../TempoWalletProvider.types';\nexport { TEMPO_CHAIN_IDS, isTempoChainId } from '../utils/tempoChainIds/tempoChainIds';\n"],"mappings":";;;;;;AASA,MAAa,sBAAsB;;;;;;;;;;;;;;;;;;;;;AAsBnC,MAAa,qBAAqB,8DAA2B,KAAW;AACtE,qDAAiB,EAAE,cAAc,qBAAqB,EAAE,OAAO,CAC7D;AAGF,sDAAkB,EAAE,cAAc,qBAAqB,EAAE,OAAO;AAChE,2DAAoC,OAAO;;;;;;;;;;;;;;;;;;ACpB7C,MAAa,0BACX,aACqC,SAAS,UAAU;;;;mECbrCA,4BAAaC,8BAAe"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { a as isTempoWalletAccount, c as registerTempoNetworkProviderBuilder, d as version, i as isTempoWalletProvider, l as TempoNativeTokenError, n as isTempoChainId, o as getTempoPublicClient, r as sendTip20Transaction, t as TEMPO_CHAIN_IDS, u as name } from "./tempoChainIds-Dt0jiwLT.esm.js";
|
|
2
|
+
import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
|
|
3
|
+
import { getDefaultClient, hasExtension, registerExtension } from "@dynamic-labs-sdk/client/core";
|
|
4
|
+
|
|
5
|
+
//#region src/addTempoExtension/addTempoExtension.ts
|
|
6
|
+
/** Registry key for the Tempo chain extension registered by addTempoExtension. */
|
|
7
|
+
const TEMPO_EXTENSION_KEY = "tempo";
|
|
8
|
+
/**
|
|
9
|
+
* Registers the Tempo chain extension with the Dynamic client.
|
|
10
|
+
* Enables support for Tempo networks (chain IDs 4217, 42429, 42431).
|
|
11
|
+
* Calling it more than once is safe: later calls do nothing.
|
|
12
|
+
*
|
|
13
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple clients.
|
|
14
|
+
* @returns Nothing. The extension is registered on the client.
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* import { createDynamicClient } from '@dynamic-labs-sdk/client';
|
|
18
|
+
* import { addTempoExtension } from '@dynamic-labs-sdk/tempo';
|
|
19
|
+
*
|
|
20
|
+
* const dynamicClient = createDynamicClient({ environmentId: '123' });
|
|
21
|
+
*
|
|
22
|
+
* addTempoExtension(dynamicClient);
|
|
23
|
+
* ```
|
|
24
|
+
* @see getTempoPublicClient
|
|
25
|
+
* @see isTempoWalletAccount
|
|
26
|
+
* @notInstrumented
|
|
27
|
+
*/
|
|
28
|
+
const addTempoExtension = (client = getDefaultClient()) => {
|
|
29
|
+
if (hasExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client)) return;
|
|
30
|
+
registerExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client);
|
|
31
|
+
registerTempoNetworkProviderBuilder(client);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/isTempoNetworkProvider/isTempoNetworkProvider.ts
|
|
36
|
+
/**
|
|
37
|
+
* Type guard — returns true if the network provider is for the Tempo chain.
|
|
38
|
+
*
|
|
39
|
+
* @param provider - The network provider to check.
|
|
40
|
+
* @returns Whether the network provider is a Tempo network provider.
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* const tempoProviders = getNetworkProviders().filter(isTempoNetworkProvider);
|
|
44
|
+
* ```
|
|
45
|
+
* @see isTempoWalletAccount
|
|
46
|
+
* @see isTempoWalletProvider
|
|
47
|
+
* @notInstrumented
|
|
48
|
+
*/
|
|
49
|
+
const isTempoNetworkProvider = (provider) => provider.chain === "TEMPO";
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/exports/index.ts
|
|
53
|
+
assertPackageVersion(name, version);
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
export { TEMPO_CHAIN_IDS, TempoNativeTokenError, addTempoExtension, getTempoPublicClient, isTempoChainId, isTempoNetworkProvider, isTempoWalletAccount, isTempoWalletProvider, sendTip20Transaction };
|
|
57
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","names":["packageName","packageVersion"],"sources":["../src/addTempoExtension/addTempoExtension.ts","../src/isTempoNetworkProvider/isTempoNetworkProvider.ts","../src/exports/index.ts"],"sourcesContent":["import {\n getDefaultClient,\n hasExtension,\n registerExtension,\n} from '@dynamic-labs-sdk/client/core';\n\nimport { registerTempoNetworkProviderBuilder } from '../registerTempoNetworkProviderBuilder/registerTempoNetworkProviderBuilder';\n\n/** Registry key for the Tempo chain extension registered by addTempoExtension. */\nexport const TEMPO_EXTENSION_KEY = 'tempo';\n\n/**\n * Registers the Tempo chain extension with the Dynamic client.\n * Enables support for Tempo networks (chain IDs 4217, 42429, 42431).\n * Calling it more than once is safe: later calls do nothing.\n *\n * @param [client] - The Dynamic client instance. Only required when using multiple clients.\n * @returns Nothing. The extension is registered on the client.\n * @example\n * ```ts\n * import { createDynamicClient } from '@dynamic-labs-sdk/client';\n * import { addTempoExtension } from '@dynamic-labs-sdk/tempo';\n *\n * const dynamicClient = createDynamicClient({ environmentId: '123' });\n *\n * addTempoExtension(dynamicClient);\n * ```\n * @see getTempoPublicClient\n * @see isTempoWalletAccount\n * @notInstrumented\n */\nexport const addTempoExtension = (client = getDefaultClient()): void => {\n if (hasExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client)) {\n return;\n }\n\n registerExtension({ extensionKey: TEMPO_EXTENSION_KEY }, client);\n registerTempoNetworkProviderBuilder(client);\n};\n","import type { NetworkProvider } from '@dynamic-labs-sdk/client';\n\nimport type { TempoNetworkProvider } from '../TempoNetworkProvider.types';\n\n/**\n * Type guard — returns true if the network provider is for the Tempo chain.\n *\n * @param provider - The network provider to check.\n * @returns Whether the network provider is a Tempo network provider.\n * @example\n * ```ts\n * const tempoProviders = getNetworkProviders().filter(isTempoNetworkProvider);\n * ```\n * @see isTempoWalletAccount\n * @see isTempoWalletProvider\n * @notInstrumented\n */\nexport const isTempoNetworkProvider = (\n provider: NetworkProvider\n): provider is TempoNetworkProvider => provider.chain === 'TEMPO';\n","import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';\n\nimport {\n name as packageName,\n version as packageVersion,\n} from '../../package.json';\nassertPackageVersion(packageName, packageVersion);\n\nexport { TempoNativeTokenError } from '../errors/TempoNativeTokenError/TempoNativeTokenError';\nexport { addTempoExtension } from '../addTempoExtension/addTempoExtension';\nexport { getTempoPublicClient } from '../getTempoPublicClient/getTempoPublicClient';\nexport { isTempoNetworkProvider } from '../isTempoNetworkProvider/isTempoNetworkProvider';\nexport { isTempoWalletAccount } from '../isTempoWalletAccount/isTempoWalletAccount';\nexport { isTempoWalletProvider } from '../isTempoWalletProvider/isTempoWalletProvider';\nexport { sendTip20Transaction } from '../sendTip20Transaction/sendTip20Transaction';\nexport type { TempoNetworkProvider } from '../TempoNetworkProvider.types';\nexport type { TempoWalletAccount } from '../TempoWalletAccount.types';\nexport type { TempoWalletProvider } from '../TempoWalletProvider.types';\nexport { TEMPO_CHAIN_IDS, isTempoChainId } from '../utils/tempoChainIds/tempoChainIds';\n"],"mappings":";;;;;;AASA,MAAa,sBAAsB;;;;;;;;;;;;;;;;;;;;;AAsBnC,MAAa,qBAAqB,SAAS,kBAAkB,KAAW;AACtE,KAAI,aAAa,EAAE,cAAc,qBAAqB,EAAE,OAAO,CAC7D;AAGF,mBAAkB,EAAE,cAAc,qBAAqB,EAAE,OAAO;AAChE,qCAAoC,OAAO;;;;;;;;;;;;;;;;;;ACpB7C,MAAa,0BACX,aACqC,SAAS,UAAU;;;;ACb1D,qBAAqBA,MAAaC,QAAe"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { NetworkProvider } from '@dynamic-labs-sdk/client';
|
|
2
|
+
import type { TempoNetworkProvider } from '../TempoNetworkProvider.types';
|
|
3
|
+
/**
|
|
4
|
+
* Type guard — returns true if the network provider is for the Tempo chain.
|
|
5
|
+
*
|
|
6
|
+
* @param provider - The network provider to check.
|
|
7
|
+
* @returns Whether the network provider is a Tempo network provider.
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* const tempoProviders = getNetworkProviders().filter(isTempoNetworkProvider);
|
|
11
|
+
* ```
|
|
12
|
+
* @see isTempoWalletAccount
|
|
13
|
+
* @see isTempoWalletProvider
|
|
14
|
+
* @notInstrumented
|
|
15
|
+
*/
|
|
16
|
+
export declare const isTempoNetworkProvider: (provider: NetworkProvider) => provider is TempoNetworkProvider;
|
|
17
|
+
//# sourceMappingURL=isTempoNetworkProvider.d.ts.map
|