@wagmi/core 3.0.2 → 3.1.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/dist/esm/exports/internal.js.map +1 -1
- package/dist/esm/exports/query.js +1 -1
- package/dist/esm/exports/query.js.map +1 -1
- package/dist/esm/exports/tempo.js +9 -0
- package/dist/esm/exports/tempo.js.map +1 -0
- package/dist/esm/tempo/Actions/amm.js +469 -0
- package/dist/esm/tempo/Actions/amm.js.map +1 -0
- package/dist/esm/tempo/Actions/dex.js +983 -0
- package/dist/esm/tempo/Actions/dex.js.map +1 -0
- package/dist/esm/tempo/Actions/faucet.js +64 -0
- package/dist/esm/tempo/Actions/faucet.js.map +1 -0
- package/dist/esm/tempo/Actions/fee.js +160 -0
- package/dist/esm/tempo/Actions/fee.js.map +1 -0
- package/dist/esm/tempo/Actions/index.js +11 -0
- package/dist/esm/tempo/Actions/index.js.map +1 -0
- package/dist/esm/tempo/Actions/nonce.js +176 -0
- package/dist/esm/tempo/Actions/nonce.js.map +1 -0
- package/dist/esm/tempo/Actions/policy.js +532 -0
- package/dist/esm/tempo/Actions/policy.js.map +1 -0
- package/dist/esm/tempo/Actions/reward.js +384 -0
- package/dist/esm/tempo/Actions/reward.js.map +1 -0
- package/dist/esm/tempo/Actions/token.js +1717 -0
- package/dist/esm/tempo/Actions/token.js.map +1 -0
- package/dist/esm/tempo/Actions/utils.js +2 -0
- package/dist/esm/tempo/Actions/utils.js.map +1 -0
- package/dist/esm/tempo/Connectors.js +534 -0
- package/dist/esm/tempo/Connectors.js.map +1 -0
- package/dist/esm/tempo/KeyManager.js +106 -0
- package/dist/esm/tempo/KeyManager.js.map +1 -0
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/exports/internal.d.ts +1 -1
- package/dist/types/exports/internal.d.ts.map +1 -1
- package/dist/types/exports/query.d.ts +1 -1
- package/dist/types/exports/query.d.ts.map +1 -1
- package/dist/types/exports/tempo.d.ts +5 -0
- package/dist/types/exports/tempo.d.ts.map +1 -0
- package/dist/types/tempo/Actions/amm.d.ts +418 -0
- package/dist/types/tempo/Actions/amm.d.ts.map +1 -0
- package/dist/types/tempo/Actions/dex.d.ts +858 -0
- package/dist/types/tempo/Actions/dex.d.ts.map +1 -0
- package/dist/types/tempo/Actions/faucet.d.ts +70 -0
- package/dist/types/tempo/Actions/faucet.d.ts.map +1 -0
- package/dist/types/tempo/Actions/fee.d.ts +141 -0
- package/dist/types/tempo/Actions/fee.d.ts.map +1 -0
- package/dist/types/tempo/Actions/index.d.ts +10 -0
- package/dist/types/tempo/Actions/index.d.ts.map +1 -0
- package/dist/types/tempo/Actions/nonce.d.ts +150 -0
- package/dist/types/tempo/Actions/nonce.d.ts.map +1 -0
- package/dist/types/tempo/Actions/policy.d.ts +478 -0
- package/dist/types/tempo/Actions/policy.d.ts.map +1 -0
- package/dist/types/tempo/Actions/reward.d.ts +340 -0
- package/dist/types/tempo/Actions/reward.d.ts.map +1 -0
- package/dist/types/tempo/Actions/token.d.ts +1531 -0
- package/dist/types/tempo/Actions/token.d.ts.map +1 -0
- package/dist/types/tempo/Actions/utils.d.ts +9 -0
- package/dist/types/tempo/Actions/utils.d.ts.map +1 -0
- package/dist/types/tempo/Connectors.d.ts +99 -0
- package/dist/types/tempo/Connectors.d.ts.map +1 -0
- package/dist/types/tempo/KeyManager.d.ts +71 -0
- package/dist/types/tempo/KeyManager.d.ts.map +1 -0
- package/dist/types/types/utils.d.ts +16 -0
- package/dist/types/types/utils.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +14 -2
- package/src/exports/internal.ts +3 -0
- package/src/exports/query.ts +4 -1
- package/src/exports/tempo.ts +14 -0
- package/src/tempo/Actions/amm.ts +719 -0
- package/src/tempo/Actions/dex.ts +1571 -0
- package/src/tempo/Actions/faucet.ts +95 -0
- package/src/tempo/Actions/fee.ts +259 -0
- package/src/tempo/Actions/index.ts +10 -0
- package/src/tempo/Actions/nonce.ts +283 -0
- package/src/tempo/Actions/policy.ts +827 -0
- package/src/tempo/Actions/reward.ts +621 -0
- package/src/tempo/Actions/token.ts +2598 -0
- package/src/tempo/Actions/utils.ts +26 -0
- package/src/tempo/Connectors.ts +762 -0
- package/src/tempo/KeyManager.ts +176 -0
- package/src/types/utils.ts +19 -0
- package/src/version.ts +1 -1
- package/tempo/package.json +5 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import * as Json from 'ox/Json';
|
|
2
|
+
import { createStorage, } from '../createStorage.js';
|
|
3
|
+
/** Instantiates a key manager. */
|
|
4
|
+
export function from(manager) {
|
|
5
|
+
return manager;
|
|
6
|
+
}
|
|
7
|
+
/** Instantiates a key manager from a Storage instance. */
|
|
8
|
+
export function fromStorage(storage) {
|
|
9
|
+
return from({
|
|
10
|
+
async getPublicKey(parameters) {
|
|
11
|
+
const publicKey = await storage.getItem(parameters.credential.id);
|
|
12
|
+
if (!publicKey)
|
|
13
|
+
throw new Error('publicKey not found.');
|
|
14
|
+
return publicKey;
|
|
15
|
+
},
|
|
16
|
+
async setPublicKey(parameters) {
|
|
17
|
+
await storage.setItem(parameters.credential.id, parameters.publicKey);
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Instantiates a key manager from a localStorage instance.
|
|
23
|
+
*
|
|
24
|
+
* WARNING: Do not use this in production.
|
|
25
|
+
* This is because we are unable to extract a user's public key after the registration
|
|
26
|
+
* process. If a user clears their storage, or visits the website on a different device,
|
|
27
|
+
* they will not be able to access their account.
|
|
28
|
+
*
|
|
29
|
+
* Instead, we recommend to set up a remote store such as [`KeyManager.http`](#http) to register
|
|
30
|
+
* public keys against their WebAuthn credential.
|
|
31
|
+
*
|
|
32
|
+
* @see {@link http}
|
|
33
|
+
*
|
|
34
|
+
* @deprecated
|
|
35
|
+
*/
|
|
36
|
+
export function localStorage(options = {}) {
|
|
37
|
+
const { key = 'wagmi.keyManager' } = options;
|
|
38
|
+
const storage = createStorage({
|
|
39
|
+
...options,
|
|
40
|
+
key,
|
|
41
|
+
storage: typeof window !== 'undefined' ? window.localStorage : undefined,
|
|
42
|
+
});
|
|
43
|
+
return fromStorage(storage);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Instantiates a key manager that uses HTTP endpoints for credential management.
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```tsx
|
|
50
|
+
* import { KeyManager } from '@wagmi/core/tempo'
|
|
51
|
+
*
|
|
52
|
+
* const keyManager = KeyManager.http('https://api.example.com')
|
|
53
|
+
* ```
|
|
54
|
+
*
|
|
55
|
+
* @param url - The URL to use for the HTTP endpoints.
|
|
56
|
+
* @param options - Configuration options for HTTP endpoints.
|
|
57
|
+
* @returns A KeyManager instance that uses HTTP for credential operations.
|
|
58
|
+
*/
|
|
59
|
+
export function http(url, options = {}) {
|
|
60
|
+
const { fetch: fetchFn = globalThis.fetch } = options;
|
|
61
|
+
const { getChallenge, getPublicKey, setPublicKey } = (() => {
|
|
62
|
+
const base = typeof url === 'string' ? url : '';
|
|
63
|
+
const urls = typeof url === 'object' ? url : {};
|
|
64
|
+
return {
|
|
65
|
+
getChallenge: urls.getChallenge ?? `${base}/challenge`,
|
|
66
|
+
getPublicKey: urls.getPublicKey ?? `${base}/:credentialId`,
|
|
67
|
+
setPublicKey: urls.setPublicKey ?? `${base}/:credentialId`,
|
|
68
|
+
};
|
|
69
|
+
})();
|
|
70
|
+
return from({
|
|
71
|
+
async getChallenge() {
|
|
72
|
+
const request = getChallenge instanceof Request
|
|
73
|
+
? getChallenge
|
|
74
|
+
: new Request(getChallenge);
|
|
75
|
+
const response = await fetchFn(request);
|
|
76
|
+
if (!response.ok)
|
|
77
|
+
throw new Error(`Failed to get create options: ${response.statusText}`);
|
|
78
|
+
return await response.json();
|
|
79
|
+
},
|
|
80
|
+
async getPublicKey(parameters) {
|
|
81
|
+
const request = getPublicKey instanceof Request
|
|
82
|
+
? getPublicKey
|
|
83
|
+
: new Request(getPublicKey);
|
|
84
|
+
const response = await fetchFn(new Request(request.url.replace(':credentialId', parameters.credential.id), request));
|
|
85
|
+
if (!response.ok)
|
|
86
|
+
throw new Error(`Failed to get public key: ${response.statusText}`);
|
|
87
|
+
const data = await response.json();
|
|
88
|
+
return data.publicKey;
|
|
89
|
+
},
|
|
90
|
+
async setPublicKey(parameters) {
|
|
91
|
+
const request = setPublicKey instanceof Request
|
|
92
|
+
? setPublicKey
|
|
93
|
+
: new Request(setPublicKey);
|
|
94
|
+
const response = await fetchFn(new Request(request.url.replace(':credentialId', parameters.credential.id), request), {
|
|
95
|
+
method: 'POST',
|
|
96
|
+
headers: {
|
|
97
|
+
'Content-Type': 'application/json',
|
|
98
|
+
},
|
|
99
|
+
body: Json.stringify(parameters),
|
|
100
|
+
});
|
|
101
|
+
if (!response.ok)
|
|
102
|
+
throw new Error(`Failed to set public key: ${response.statusText}`);
|
|
103
|
+
},
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=KeyManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyManager.js","sourceRoot":"","sources":["../../../src/tempo/KeyManager.ts"],"names":[],"mappings":"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"}
|