tapimo 0.0.2 → 0.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/README.md +11 -2
- package/dist/ApiKey.d.ts +12 -11
- package/dist/ApiKey.d.ts.map +1 -1
- package/dist/ApiKey.js +10 -12
- package/dist/ApiKey.js.map +1 -1
- package/dist/ApiKeys.d.ts +139 -0
- package/dist/ApiKeys.d.ts.map +1 -0
- package/dist/ApiKeys.js +166 -0
- package/dist/ApiKeys.js.map +1 -0
- package/dist/App.d.ts +920 -910
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +36 -12
- package/dist/App.js.map +1 -1
- package/dist/Handler.d.ts +86 -0
- package/dist/Handler.d.ts.map +1 -0
- package/dist/Handler.js +83 -0
- package/dist/Handler.js.map +1 -0
- package/dist/Scope.d.ts +4 -1
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +5 -1
- package/dist/Scope.js.map +1 -1
- package/dist/Webhooks.d.ts +3 -5
- package/dist/Webhooks.d.ts.map +1 -1
- package/dist/Webhooks.js +9 -2
- package/dist/Webhooks.js.map +1 -1
- package/dist/admin/Access.d.ts +1 -3
- package/dist/admin/Access.d.ts.map +1 -1
- package/dist/admin/Access.js +1 -3
- package/dist/admin/Access.js.map +1 -1
- package/dist/admin/App.d.ts +98 -209
- package/dist/admin/App.d.ts.map +1 -1
- package/dist/admin/App.js +2 -4
- package/dist/admin/App.js.map +1 -1
- package/dist/admin/apps/api-keys.d.ts +7 -5
- package/dist/admin/apps/api-keys.d.ts.map +1 -1
- package/dist/admin/apps/api-keys.js +8 -9
- package/dist/admin/apps/api-keys.js.map +1 -1
- package/dist/admin/apps/scopes.d.ts +3 -0
- package/dist/admin/apps/scopes.d.ts.map +1 -1
- package/dist/admin/apps/verified-tokens.d.ts +101 -215
- package/dist/admin/apps/verified-tokens.d.ts.map +1 -1
- package/dist/admin/apps/verified-tokens.js +17 -38
- package/dist/admin/apps/verified-tokens.js.map +1 -1
- package/dist/admin/ui.generated.d.ts +1 -1
- package/dist/admin/ui.generated.js +1 -1
- package/dist/apps/balances.d.ts +2 -2
- package/dist/apps/receipts.d.ts +43 -43
- package/dist/apps/tokens.d.ts +454 -454
- package/dist/apps/transactions.d.ts +43 -43
- package/dist/apps/transfers.d.ts +29 -29
- package/dist/apps/webhooks.d.ts +5 -2
- package/dist/apps/webhooks.d.ts.map +1 -1
- package/dist/apps/webhooks.js +38 -34
- package/dist/apps/webhooks.js.map +1 -1
- package/dist/{Cli.d.ts → cli/Cli.d.ts} +13 -2
- package/dist/cli/Cli.d.ts.map +1 -0
- package/dist/cli/Cli.js +19 -0
- package/dist/cli/Cli.js.map +1 -0
- package/dist/cli/bin.d.ts +3 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/bin.js +4 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/commands/admin.d.ts +15 -0
- package/dist/cli/commands/admin.d.ts.map +1 -0
- package/dist/cli/commands/admin.js +60 -0
- package/dist/cli/commands/admin.js.map +1 -0
- package/dist/cloudflare.d.ts +7 -0
- package/dist/cloudflare.d.ts.map +1 -1
- package/dist/cloudflare.js +9 -0
- package/dist/cloudflare.js.map +1 -1
- package/dist/db/Db.d.ts +103 -0
- package/dist/db/Db.d.ts.map +1 -0
- package/dist/db/Db.js +274 -0
- package/dist/db/Db.js.map +1 -0
- package/dist/db/Schema.d.ts +88 -0
- package/dist/db/Schema.d.ts.map +1 -0
- package/dist/db/Schema.js +130 -0
- package/dist/db/Schema.js.map +1 -0
- package/dist/db/tables/organizations.d.ts +79 -0
- package/dist/db/tables/organizations.d.ts.map +1 -0
- package/dist/db/tables/organizations.js +81 -0
- package/dist/db/tables/organizations.js.map +1 -0
- package/dist/db/tables/verifiedTokens.d.ts +53 -0
- package/dist/db/tables/verifiedTokens.d.ts.map +1 -0
- package/dist/db/tables/verifiedTokens.js +74 -0
- package/dist/db/tables/verifiedTokens.js.map +1 -0
- package/dist/db/tables/webhookDeliveries.d.ts +71 -0
- package/dist/db/tables/webhookDeliveries.d.ts.map +1 -0
- package/dist/db/tables/webhookDeliveries.js +119 -0
- package/dist/db/tables/webhookDeliveries.js.map +1 -0
- package/dist/db/tables/webhookSubscriptions.d.ts +158 -0
- package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -0
- package/dist/db/tables/webhookSubscriptions.js +272 -0
- package/dist/db/tables/webhookSubscriptions.js.map +1 -0
- package/dist/handlers/internal/executionError.d.ts +25 -0
- package/dist/handlers/internal/executionError.d.ts.map +1 -0
- package/dist/handlers/internal/executionError.js +184 -0
- package/dist/handlers/internal/executionError.js.map +1 -0
- package/dist/handlers/internal/multisig.d.ts +237 -0
- package/dist/handlers/internal/multisig.d.ts.map +1 -0
- package/dist/handlers/internal/multisig.js +567 -0
- package/dist/handlers/internal/multisig.js.map +1 -0
- package/dist/handlers/internal/requestListener.d.ts +124 -0
- package/dist/handlers/internal/requestListener.d.ts.map +1 -0
- package/dist/handlers/internal/requestListener.js +173 -0
- package/dist/handlers/internal/requestListener.js.map +1 -0
- package/dist/handlers/internal/sponsorship.d.ts +83 -0
- package/dist/handlers/internal/sponsorship.d.ts.map +1 -0
- package/dist/handlers/internal/sponsorship.js +103 -0
- package/dist/handlers/internal/sponsorship.js.map +1 -0
- package/dist/handlers/internal/types.d.ts +284 -0
- package/dist/handlers/internal/types.d.ts.map +1 -0
- package/dist/handlers/internal/types.js +2 -0
- package/dist/handlers/internal/types.js.map +1 -0
- package/dist/handlers/internal/utils.d.ts +34 -0
- package/dist/handlers/internal/utils.d.ts.map +1 -0
- package/dist/handlers/internal/utils.js +131 -0
- package/dist/handlers/internal/utils.js.map +1 -0
- package/dist/handlers/relay.d.ts +119 -0
- package/dist/handlers/relay.d.ts.map +1 -0
- package/dist/handlers/relay.js +1264 -0
- package/dist/handlers/relay.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/internal/Auth.d.ts +16 -10
- package/dist/internal/Auth.d.ts.map +1 -1
- package/dist/internal/Auth.js +72 -12
- package/dist/internal/Auth.js.map +1 -1
- package/dist/internal/RpcSchema.d.ts +10 -0
- package/dist/internal/RpcSchema.d.ts.map +1 -0
- package/dist/internal/RpcSchema.js +2 -0
- package/dist/internal/RpcSchema.js.map +1 -0
- package/dist/internal/Store.d.ts +42 -3
- package/dist/internal/Store.d.ts.map +1 -1
- package/dist/internal/Store.js +65 -3
- package/dist/internal/Store.js.map +1 -1
- package/dist/internal/VerifiedTokens.d.ts +15 -34
- package/dist/internal/VerifiedTokens.d.ts.map +1 -1
- package/dist/internal/VerifiedTokens.js +115 -159
- package/dist/internal/VerifiedTokens.js.map +1 -1
- package/dist/internal/Webhooks.d.ts +49 -35
- package/dist/internal/Webhooks.d.ts.map +1 -1
- package/dist/internal/Webhooks.js +92 -205
- package/dist/internal/Webhooks.js.map +1 -1
- package/package.json +7 -2
- package/src/ApiKey.test.ts +3 -3
- package/src/ApiKey.ts +10 -12
- package/src/ApiKeys.test.ts +175 -0
- package/src/ApiKeys.ts +205 -0
- package/src/App.test-d.ts +1 -1
- package/src/App.test.ts +10768 -351
- package/src/App.ts +79 -36
- package/src/Client.test-d.ts +1 -1
- package/src/Handler.ts +154 -0
- package/src/Scope.ts +5 -1
- package/src/Webhooks.test.ts +8 -7
- package/src/Webhooks.ts +11 -5
- package/src/admin/Access.ts +1 -3
- package/src/admin/App.ts +19 -24
- package/src/admin/apps/api-keys.test.ts +19 -18
- package/src/admin/apps/api-keys.ts +8 -9
- package/src/admin/apps/scopes.test.ts +4 -0
- package/src/admin/apps/verified-tokens.test.ts +3 -30
- package/src/admin/apps/verified-tokens.ts +17 -36
- package/src/admin/ui.generated.ts +1 -1
- package/src/apps/balances.test.ts +4 -3
- package/src/apps/blocks.test.ts +1 -1
- package/src/apps/exchanges.test.ts +1 -1
- package/src/apps/indexer.test.ts +1 -1
- package/src/apps/receipts.test.ts +1 -1
- package/src/apps/rpc.test.ts +100 -10
- package/src/apps/tokenlist.test.ts +5 -7
- package/src/apps/tokens.test.ts +4 -3
- package/src/apps/transactions.test.ts +1 -1
- package/src/apps/transfers.test.ts +1 -1
- package/src/apps/verified-tokens.test.ts +24 -12
- package/src/apps/webhooks.test.ts +130 -143
- package/src/apps/webhooks.ts +45 -47
- package/src/{Cli.test.ts → cli/Cli.test.ts} +10 -9
- package/src/{Cli.ts → cli/Cli.ts} +16 -9
- package/src/cli/bin.ts +4 -0
- package/src/cli/commands/admin.test.ts +71 -0
- package/src/cli/commands/admin.ts +60 -0
- package/src/cloudflare.ts +10 -0
- package/src/db/Db.test.ts +84 -0
- package/src/db/Db.ts +383 -0
- package/src/db/Schema.ts +164 -0
- package/src/db/tables/organizations.test.ts +124 -0
- package/src/db/tables/organizations.ts +127 -0
- package/src/db/tables/verifiedTokens.ts +111 -0
- package/src/db/tables/webhookDeliveries.ts +159 -0
- package/src/db/tables/webhookSubscriptions.ts +358 -0
- package/src/handlers/internal/executionError.ts +205 -0
- package/src/handlers/internal/multisig.localnet.test.ts +146 -0
- package/src/handlers/internal/multisig.test.ts +744 -0
- package/src/handlers/internal/multisig.ts +858 -0
- package/src/handlers/internal/relay.localnet.test.ts +2035 -0
- package/src/handlers/internal/requestListener.ts +273 -0
- package/src/handlers/internal/sponsorship.ts +186 -0
- package/src/handlers/internal/types.ts +378 -0
- package/src/handlers/internal/utils.ts +153 -0
- package/src/handlers/relay.ts +1605 -0
- package/src/index.ts +4 -2
- package/src/internal/Auth.test.ts +21 -21
- package/src/internal/Auth.ts +92 -19
- package/src/internal/RateLimit.test.ts +1 -1
- package/src/internal/RpcSchema.ts +10 -0
- package/src/internal/Store.test.ts +98 -10
- package/src/internal/Store.ts +112 -6
- package/src/internal/VerifiedTokens.test.ts +99 -115
- package/src/internal/VerifiedTokens.ts +123 -175
- package/src/internal/Webhooks.test.ts +107 -107
- package/src/internal/Webhooks.ts +102 -220
- package/dist/ApiKeySource.d.ts +0 -166
- package/dist/ApiKeySource.d.ts.map +0 -1
- package/dist/ApiKeySource.js +0 -234
- package/dist/ApiKeySource.js.map +0 -1
- package/dist/Cli.d.ts.map +0 -1
- package/dist/Cli.js +0 -13
- package/dist/Cli.js.map +0 -1
- package/seeds/31318/icons/0x20c0000000000000000000000000000000000000.svg +0 -1
- package/seeds/31318/icons/0x20c0000000000000000000000000000000000001.svg +0 -1
- package/seeds/31318/icons/0x20c0000000000000000000000000000000000002.svg +0 -1
- package/seeds/31318/icons/0x20c0000000000000000000000000000000000003.svg +0 -1
- package/seeds/31318/verified-tokens.json +0 -30
- package/seeds/4217/icons/0x20c0000000000000000000000000000000000000.svg +0 -25
- package/seeds/4217/icons/0x20c000000000000000000000048c8f36df1c9a4a.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000000520792dcccccccc.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000000a6da882d075a4c3.svg +0 -4
- package/seeds/4217/icons/0x20c000000000000000000000111111111e910f0f.svg +0 -30
- package/seeds/4217/icons/0x20c00000000000000000000014f22ca97301eb73.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000001621e21f71cf12fb.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000002f52d5cc21a3207b.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000003158081efd85bfc2.svg +0 -11
- package/seeds/4217/icons/0x20c0000000000000000000003554d28269e0f3c2.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000383a23bacb546ab9.svg +0 -1
- package/seeds/4217/icons/0x20c00000000000000000000042109aef2f8b28e1.png +0 -0
- package/seeds/4217/icons/0x20c0000000000000000000005c0bac7cef389a11.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000006fd9a167923ba194.png +0 -0
- package/seeds/4217/icons/0x20c0000000000000000000007f7ba549dd0251b9.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000008191667423f70e67.svg +0 -5
- package/seeds/4217/icons/0x20c0000000000000000000008ee4fcff88888888.svg +0 -1
- package/seeds/4217/icons/0x20c0000000000000000000009a4a4b17e0dc6651.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000ab02d39df30bd17e.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000ae247a1130450f09.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000aeed2ec36a54d0e5.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000b9537d11c60e8b50.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000bd95bfb69fbe6ce3.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000c412ec89d0c08be5.svg +0 -1
- package/seeds/4217/icons/0x20c000000000000000000000f047dd7018e50367.png +0 -0
- package/seeds/4217/verified-tokens.json +0 -177
- package/seeds/42431/icons/0x20c0000000000000000000000000000000000000.svg +0 -25
- package/seeds/42431/icons/0x20c0000000000000000000000000000000000001.svg +0 -1
- package/seeds/42431/icons/0x20c0000000000000000000000000000000000002.svg +0 -1
- package/seeds/42431/icons/0x20c0000000000000000000000000000000000003.svg +0 -1
- package/seeds/42431/icons/0x20c0000000000000000000009e8d7eb59b783726.svg +0 -1
- package/seeds/42431/icons/0x20c000000000000000000000d72572838bbee59c.svg +0 -1
- package/seeds/42431/verified-tokens.json +0 -44
- package/seeds/openrpc/README.md +0 -27
- package/seeds/openrpc/execution-apis.json +0 -8989
- package/src/ApiKeySource.test-d.ts +0 -11
- package/src/ApiKeySource.test.ts +0 -295
- package/src/ApiKeySource.ts +0 -303
package/dist/internal/Store.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Json } from 'ox';
|
|
1
2
|
/**
|
|
2
3
|
* Wraps store operations into a {@link Store}, defaulting to an authoritative
|
|
3
4
|
* {@link State} store. Omit `type` for the common authoritative case; pass
|
|
@@ -25,6 +26,31 @@ export async function increment(store, key, options = {}) {
|
|
|
25
26
|
await store.put(key, String(count), options);
|
|
26
27
|
return count;
|
|
27
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Atomically transforms a value on a store: reads the current value, applies
|
|
31
|
+
* `fn`, and writes the result, returning the written value.
|
|
32
|
+
*
|
|
33
|
+
* Uses the store's native {@link Store.swap} compare-and-swap when implemented,
|
|
34
|
+
* re-running `fn` on contention (optimistic concurrency, bounded by
|
|
35
|
+
* `attempts`). Otherwise falls back to a get + put read-modify-write, which
|
|
36
|
+
* can lose concurrent writes — fine for dev/in-process backends, not for
|
|
37
|
+
* contended distributed state.
|
|
38
|
+
*/
|
|
39
|
+
export async function update(store, key, fn, options = {}) {
|
|
40
|
+
const { attempts = 8, ...put } = options;
|
|
41
|
+
if (!store.swap) {
|
|
42
|
+
const next = fn(await store.get(key));
|
|
43
|
+
await store.put(key, next, put);
|
|
44
|
+
return next;
|
|
45
|
+
}
|
|
46
|
+
for (let attempt = 0; attempt < attempts; attempt++) {
|
|
47
|
+
const current = await store.get(key);
|
|
48
|
+
const next = fn(current);
|
|
49
|
+
if (await store.swap(key, current, next, put))
|
|
50
|
+
return next;
|
|
51
|
+
}
|
|
52
|
+
throw new UpdateContentionError(key, attempts);
|
|
53
|
+
}
|
|
28
54
|
/** Creates an in-memory store with TTL support. */
|
|
29
55
|
export function memory(options = {}) {
|
|
30
56
|
const cells = new Map((options.entries ?? []).map(([key, value]) => [key, { expiresAt: undefined, value }]));
|
|
@@ -64,6 +90,15 @@ export function memory(options = {}) {
|
|
|
64
90
|
const expiresAt = options.ttl === undefined ? undefined : Date.now() + options.ttl;
|
|
65
91
|
cells.set(key, { expiresAt, value });
|
|
66
92
|
},
|
|
93
|
+
// Native swap: the compare and write are synchronous, so concurrent
|
|
94
|
+
// consumers cannot interleave between them.
|
|
95
|
+
async swap(key, expected, next, options = {}) {
|
|
96
|
+
if ((read(key)?.value ?? null) !== expected)
|
|
97
|
+
return false;
|
|
98
|
+
const expiresAt = options.ttl === undefined ? undefined : Date.now() + options.ttl;
|
|
99
|
+
cells.set(key, { expiresAt, value: next });
|
|
100
|
+
return true;
|
|
101
|
+
},
|
|
67
102
|
});
|
|
68
103
|
}
|
|
69
104
|
/**
|
|
@@ -152,6 +187,20 @@ function durableObjectStorage(storage) {
|
|
|
152
187
|
}
|
|
153
188
|
await storage.put(key, durableObjectValue(value, options));
|
|
154
189
|
},
|
|
190
|
+
// Native swap: the object is single-threaded and its input gate holds
|
|
191
|
+
// other events while storage operations are in flight, so the compare and
|
|
192
|
+
// write cannot interleave with another request.
|
|
193
|
+
async swap(key, expected, next, options = {}) {
|
|
194
|
+
const current = (await durableObjectRead(storage, key, await storage.get(key)))?.value ?? null;
|
|
195
|
+
if (current !== expected)
|
|
196
|
+
return false;
|
|
197
|
+
if (options.ttl !== undefined && options.ttl <= 0) {
|
|
198
|
+
await storage.delete(key);
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
await storage.put(key, durableObjectValue(next, options));
|
|
202
|
+
return true;
|
|
203
|
+
},
|
|
155
204
|
});
|
|
156
205
|
}
|
|
157
206
|
/**
|
|
@@ -164,7 +213,7 @@ export async function memoize(fetch, options) {
|
|
|
164
213
|
const raw = await store.get(key);
|
|
165
214
|
if (raw) {
|
|
166
215
|
try {
|
|
167
|
-
return
|
|
216
|
+
return Json.parse(raw);
|
|
168
217
|
}
|
|
169
218
|
catch {
|
|
170
219
|
// Corrupt entries are treated as misses so the next call refreshes.
|
|
@@ -179,7 +228,7 @@ export async function memoize(fetch, options) {
|
|
|
179
228
|
// fetch is still in flight.
|
|
180
229
|
const flight = (async () => {
|
|
181
230
|
const value = await fetch();
|
|
182
|
-
await store.put(key,
|
|
231
|
+
await store.put(key, Json.stringify(value), { ttl });
|
|
183
232
|
return value;
|
|
184
233
|
})();
|
|
185
234
|
flights.set(key, flight);
|
|
@@ -228,6 +277,12 @@ function durableObjectStub(namespace, name) {
|
|
|
228
277
|
async put(key, value, options) {
|
|
229
278
|
await durableObjectRetry(() => stub(key).put(key, value, options));
|
|
230
279
|
},
|
|
280
|
+
// Native RPC swap: the compare-and-write runs inside the object. A lost
|
|
281
|
+
// response retried after a successful write compares stale and returns
|
|
282
|
+
// false, which optimistic callers already handle as contention.
|
|
283
|
+
async swap(key, expected, next, options) {
|
|
284
|
+
return durableObjectRetry(() => stub(key).swap(key, expected, next, options));
|
|
285
|
+
},
|
|
231
286
|
});
|
|
232
287
|
}
|
|
233
288
|
/**
|
|
@@ -258,7 +313,7 @@ function cloudflareKvExpirationTtl(ttl) {
|
|
|
258
313
|
throw new RangeError('Cloudflare KV expirationTtl must be at least 60 seconds');
|
|
259
314
|
return seconds;
|
|
260
315
|
}
|
|
261
|
-
const durableObjectValueType = '
|
|
316
|
+
const durableObjectValueType = 'tempo-api:store:v1';
|
|
262
317
|
function durableObjectValue(value, options) {
|
|
263
318
|
if (options.ttl === undefined)
|
|
264
319
|
return value;
|
|
@@ -288,4 +343,11 @@ function isDurableObjectValue(value) {
|
|
|
288
343
|
value.expiresAt === undefined ||
|
|
289
344
|
typeof value.expiresAt === 'number'));
|
|
290
345
|
}
|
|
346
|
+
/** Thrown when {@link update} exhausts its compare-and-swap attempts. */
|
|
347
|
+
export class UpdateContentionError extends Error {
|
|
348
|
+
name = 'Store.UpdateContentionError';
|
|
349
|
+
constructor(key, attempts) {
|
|
350
|
+
super(`Store update on "${key}" lost ${attempts} compare-and-swap attempts.`);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
291
353
|
//# sourceMappingURL=Store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/internal/Store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/internal/Store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { Context } from 'hono';
|
|
2
2
|
import * as z from 'zod/mini';
|
|
3
3
|
import type * as App from '../App.js';
|
|
4
|
+
import * as Db from '../db/Db.js';
|
|
5
|
+
import * as core_VerifiedTokens from '../db/tables/verifiedTokens.js';
|
|
4
6
|
import * as Schema from './Schema.js';
|
|
5
|
-
import * as Store from './Store.js';
|
|
6
7
|
/** Chain id covered by the curated verified-token lists. */
|
|
7
8
|
export type ChainId = z.output<typeof Schema.ChainId>;
|
|
8
|
-
/** Schema for a chain's verified token list (
|
|
9
|
+
/** Schema for a chain's verified token list (validated at the write boundary). */
|
|
9
10
|
export declare const Data: z.ZodMiniArray<z.ZodMiniObject<{
|
|
10
11
|
address: z.ZodMiniPipe<z.ZodMiniTemplateLiteral<`0x${string}`>, z.ZodMiniTransform<`0x${string}`, `0x${string}`>>;
|
|
11
12
|
currency: z.ZodMiniString<string>;
|
|
@@ -60,26 +61,18 @@ export declare namespace compile {
|
|
|
60
61
|
version: string;
|
|
61
62
|
};
|
|
62
63
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
count: z.ZodMiniNumber<number>;
|
|
66
|
-
schema: z.ZodMiniNumber<number>;
|
|
67
|
-
updatedAt: z.ZodMiniString<string>;
|
|
68
|
-
version: z.ZodMiniString<string>;
|
|
69
|
-
}, z.core.$strip>;
|
|
70
|
-
/** Parsed head pointer for a chain. */
|
|
71
|
-
export type Head = z.output<typeof Head>;
|
|
64
|
+
/** A chain's list-level metadata (the "head" the cache compares against). */
|
|
65
|
+
export type Head = core_VerifiedTokens.Meta;
|
|
72
66
|
/**
|
|
73
|
-
* Reads and compiles
|
|
74
|
-
*
|
|
75
|
-
* missing snapshot blob.
|
|
67
|
+
* Reads and compiles a chain's current verified list. Returns `null` when the
|
|
68
|
+
* chain has none.
|
|
76
69
|
*/
|
|
77
|
-
export declare function read(
|
|
70
|
+
export declare function read(db: Db.Db, chainId: ChainId): Promise<Snapshot | null>;
|
|
78
71
|
/**
|
|
79
72
|
* Appends a verified token to a chain's list and publishes a new snapshot.
|
|
80
73
|
* Throws on a duplicate address or (case-insensitive) symbol.
|
|
81
74
|
*/
|
|
82
|
-
export declare function create(
|
|
75
|
+
export declare function create(db: Db.Db, input: create.Input): Promise<create.Result>;
|
|
83
76
|
export declare namespace create {
|
|
84
77
|
/** Input for {@link create}. */
|
|
85
78
|
type Input = {
|
|
@@ -111,7 +104,7 @@ export declare namespace create {
|
|
|
111
104
|
* publishes a new snapshot. Throws {@link NotFoundError} when the address is
|
|
112
105
|
* absent, and the uniqueness errors when an edit collides with another entry.
|
|
113
106
|
*/
|
|
114
|
-
export declare function patch(
|
|
107
|
+
export declare function patch(db: Db.Db, chainId: ChainId, address: string, input: patch.Input, options?: patch.Options): Promise<create.Result>;
|
|
115
108
|
export declare namespace patch {
|
|
116
109
|
/** Patchable fields for {@link patch} (address and chain are immutable). */
|
|
117
110
|
type Input = {
|
|
@@ -136,7 +129,7 @@ export declare namespace patch {
|
|
|
136
129
|
* Removes a verified token from a chain's list and publishes a new snapshot.
|
|
137
130
|
* Throws {@link NotFoundError} when the address is absent.
|
|
138
131
|
*/
|
|
139
|
-
export declare function remove(
|
|
132
|
+
export declare function remove(db: Db.Db, chainId: ChainId, address: string, options?: patch.Options): Promise<remove.Result>;
|
|
140
133
|
export declare namespace remove {
|
|
141
134
|
/** Result of {@link remove}. */
|
|
142
135
|
type Result = {
|
|
@@ -148,7 +141,7 @@ export declare namespace remove {
|
|
|
148
141
|
* Replaces a chain's entire verified list and publishes a new snapshot. Used to
|
|
149
142
|
* bulk-load the initial list and to roll back to a previous one.
|
|
150
143
|
*/
|
|
151
|
-
export declare function replace(
|
|
144
|
+
export declare function replace(db: Db.Db, chainId: ChainId, tokens: readonly TokenInput[], options?: patch.Options): Promise<remove.Result>;
|
|
152
145
|
/**
|
|
153
146
|
* Primes this isolate's in-memory snapshot for a chain. The writer isolate calls
|
|
154
147
|
* this after a successful publish so the next read reflects the write without
|
|
@@ -159,11 +152,11 @@ export declare function prime(chainId: ChainId, snapshot: Snapshot): void;
|
|
|
159
152
|
* Returns the compiled verified-token {@link Snapshot} for a chain.
|
|
160
153
|
*
|
|
161
154
|
* When the verified-tokens feature is unconfigured, serves an empty snapshot.
|
|
162
|
-
* When configured
|
|
163
|
-
* refreshed on a soft TTL: fresh lookups do zero
|
|
155
|
+
* When configured, serves a per-isolate snapshot backed by the app database,
|
|
156
|
+
* refreshed on a soft TTL: fresh lookups do zero database I/O; soft-stale
|
|
164
157
|
* lookups return the current snapshot immediately and refresh in the background
|
|
165
158
|
* (single-flight, head-only unless the version changed); a cold isolate loads
|
|
166
|
-
* from the
|
|
159
|
+
* from the database (an empty snapshot when no head exists).
|
|
167
160
|
*/
|
|
168
161
|
export declare function snapshot(c: Context<App.Environment>, chainId: ChainId): Promise<Snapshot>;
|
|
169
162
|
/**
|
|
@@ -173,18 +166,6 @@ export declare function snapshot(c: Context<App.Environment>, chainId: ChainId):
|
|
|
173
166
|
* authoritative set is `Snapshot.currencies` from the live store.
|
|
174
167
|
*/
|
|
175
168
|
export declare const currencies: string[];
|
|
176
|
-
/**
|
|
177
|
-
* Thrown when a chain's `head` points at a snapshot version whose blob is
|
|
178
|
-
* missing from the store. The write path always writes the blob before flipping
|
|
179
|
-
* the head, so this indicates a torn write or external tampering.
|
|
180
|
-
*/
|
|
181
|
-
export declare class TornStateError extends Error {
|
|
182
|
-
name: string;
|
|
183
|
-
constructor(options: {
|
|
184
|
-
chainId: number;
|
|
185
|
-
version: string;
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
169
|
/** Thrown when a write would introduce a duplicate address on a chain. */
|
|
189
170
|
export declare class DuplicateAddressError extends Error {
|
|
190
171
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerifiedTokens.d.ts","sourceRoot":"","sources":["../../src/internal/VerifiedTokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"VerifiedTokens.d.ts","sourceRoot":"","sources":["../../src/internal/VerifiedTokens.ts"],"names":[],"mappings":"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"}
|