tapimo 0.10.2 → 0.12.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/App.d.ts +4896 -2166
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +2 -2
- package/dist/App.js.map +1 -1
- package/dist/Assets.d.ts +15 -0
- package/dist/Assets.d.ts.map +1 -1
- package/dist/Assets.js +7 -0
- package/dist/Assets.js.map +1 -1
- package/dist/Webhooks.d.ts +0 -75
- package/dist/Webhooks.d.ts.map +1 -1
- package/dist/Webhooks.js +1 -143
- package/dist/Webhooks.js.map +1 -1
- package/dist/admin/App.d.ts +127 -78
- package/dist/admin/App.d.ts.map +1 -1
- package/dist/admin/apps/earn-vaults.d.ts +115 -1
- package/dist/admin/apps/earn-vaults.d.ts.map +1 -1
- package/dist/admin/apps/earn-vaults.js +59 -6
- package/dist/admin/apps/earn-vaults.js.map +1 -1
- package/dist/admin/apps/organizations.d.ts +3 -3
- package/dist/admin/apps/organizations.d.ts.map +1 -1
- package/dist/admin/apps/organizations.js +4 -2
- package/dist/admin/apps/organizations.js.map +1 -1
- package/dist/admin/apps/verified-tokens.d.ts +83 -83
- package/dist/admin/ui.generated.d.ts +1 -1
- package/dist/admin/ui.generated.d.ts.map +1 -1
- package/dist/admin/ui.generated.js +151 -151
- package/dist/admin/ui.generated.js.map +1 -1
- package/dist/apps/data/App.d.ts +5924 -4310
- package/dist/apps/data/App.d.ts.map +1 -1
- package/dist/apps/data/App.js +61 -9
- package/dist/apps/data/App.js.map +1 -1
- package/dist/apps/data/ZoneSelection.d.ts +62 -0
- package/dist/apps/data/ZoneSelection.d.ts.map +1 -0
- package/dist/apps/data/ZoneSelection.js +44 -0
- package/dist/apps/data/ZoneSelection.js.map +1 -0
- package/dist/apps/data/routes/activities.d.ts +2368 -5
- package/dist/apps/data/routes/activities.d.ts.map +1 -1
- package/dist/apps/data/routes/activities.js +423 -114
- package/dist/apps/data/routes/activities.js.map +1 -1
- package/dist/apps/data/routes/addresses.d.ts +131 -0
- package/dist/apps/data/routes/addresses.d.ts.map +1 -1
- package/dist/apps/data/routes/balances.d.ts +25 -25
- package/dist/apps/data/routes/balances.js +1 -1
- package/dist/apps/data/routes/balances.js.map +1 -1
- package/dist/apps/data/routes/blocks.d.ts +1 -1
- package/dist/apps/data/routes/blocks.js +1 -1
- package/dist/apps/data/routes/blocks.js.map +1 -1
- package/dist/apps/data/routes/earn.d.ts +135 -10
- package/dist/apps/data/routes/earn.d.ts.map +1 -1
- package/dist/apps/data/routes/earn.js +157 -25
- package/dist/apps/data/routes/earn.js.map +1 -1
- package/dist/apps/data/routes/exchanges.d.ts +829 -123
- package/dist/apps/data/routes/exchanges.d.ts.map +1 -1
- package/dist/apps/data/routes/exchanges.js +16 -13
- package/dist/apps/data/routes/exchanges.js.map +1 -1
- package/dist/apps/data/routes/fee-amm.d.ts +26 -26
- package/dist/apps/data/routes/fee-amm.d.ts.map +1 -1
- package/dist/apps/data/routes/fee-amm.js +9 -11
- package/dist/apps/data/routes/fee-amm.js.map +1 -1
- package/dist/apps/data/routes/receipts.d.ts +54 -54
- package/dist/apps/data/routes/receipts.js +1 -1
- package/dist/apps/data/routes/receipts.js.map +1 -1
- package/dist/apps/data/routes/rpc.js +24 -10
- package/dist/apps/data/routes/rpc.js.map +1 -1
- package/dist/apps/data/routes/tokenlist.d.ts +12 -12
- package/dist/apps/data/routes/tokenlist.d.ts.map +1 -1
- package/dist/apps/data/routes/tokenlist.js +16 -15
- package/dist/apps/data/routes/tokenlist.js.map +1 -1
- package/dist/apps/data/routes/tokens.d.ts +17 -3
- package/dist/apps/data/routes/tokens.d.ts.map +1 -1
- package/dist/apps/data/routes/tokens.js +34 -15
- package/dist/apps/data/routes/tokens.js.map +1 -1
- package/dist/apps/data/routes/transactions.d.ts +1 -1
- package/dist/apps/data/routes/transactions.js +1 -1
- package/dist/apps/data/routes/transactions.js.map +1 -1
- package/dist/apps/data/routes/transfers.d.ts +13 -13
- package/dist/apps/data/routes/transfers.d.ts.map +1 -1
- package/dist/apps/data/routes/transfers.js +7 -9
- package/dist/apps/data/routes/transfers.js.map +1 -1
- package/dist/apps/data/routes/valuation.d.ts +21 -21
- package/dist/apps/data/routes/verified-tokens.d.ts +5 -5
- package/dist/apps/data/routes/webhooks.d.ts +1011 -151
- package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/data/routes/webhooks.js +126 -739
- package/dist/apps/data/routes/webhooks.js.map +1 -1
- package/dist/apps/data/routes/zones.d.ts +15 -15
- package/dist/apps/funding/App.d.ts +27 -27
- package/dist/apps/funding/routes/chains.d.ts.map +1 -1
- package/dist/apps/funding/routes/chains.js +5 -4
- package/dist/apps/funding/routes/chains.js.map +1 -1
- package/dist/apps/funding/routes/deposit-addresses.d.ts +18 -18
- package/dist/apps/funding/routes/deposit-addresses.d.ts.map +1 -1
- package/dist/apps/funding/routes/deposit-addresses.js +8 -8
- package/dist/apps/funding/routes/deposit-addresses.js.map +1 -1
- package/dist/apps/funding/routes/providers.d.ts.map +1 -1
- package/dist/apps/funding/routes/providers.js +3 -2
- package/dist/apps/funding/routes/providers.js.map +1 -1
- package/dist/apps/funding/routes/quotes.d.ts.map +1 -1
- package/dist/apps/funding/routes/quotes.js +2 -2
- package/dist/apps/funding/routes/quotes.js.map +1 -1
- package/dist/apps/funding/routes/transfers.d.ts +33 -33
- package/dist/apps/management/App.d.ts +1433 -322
- package/dist/apps/management/App.d.ts.map +1 -1
- package/dist/apps/management/Billing.d.ts.map +1 -1
- package/dist/apps/management/Billing.js +19 -6
- package/dist/apps/management/Billing.js.map +1 -1
- package/dist/apps/management/routes/api-keys.d.ts +154 -94
- package/dist/apps/management/routes/api-keys.d.ts.map +1 -1
- package/dist/apps/management/routes/api-keys.js +76 -30
- package/dist/apps/management/routes/api-keys.js.map +1 -1
- package/dist/apps/management/routes/billing.d.ts +103 -30
- package/dist/apps/management/routes/billing.d.ts.map +1 -1
- package/dist/apps/management/routes/billing.js +91 -32
- package/dist/apps/management/routes/billing.js.map +1 -1
- package/dist/apps/management/routes/faucet.d.ts +12 -12
- package/dist/apps/management/routes/faucet.d.ts.map +1 -1
- package/dist/apps/management/routes/faucet.js +23 -12
- package/dist/apps/management/routes/faucet.js.map +1 -1
- package/dist/apps/management/routes/invitations.d.ts +46 -13
- package/dist/apps/management/routes/invitations.d.ts.map +1 -1
- package/dist/apps/management/routes/invitations.js +79 -29
- package/dist/apps/management/routes/invitations.js.map +1 -1
- package/dist/apps/management/routes/invite-links.d.ts +128 -83
- package/dist/apps/management/routes/invite-links.d.ts.map +1 -1
- package/dist/apps/management/routes/invite-links.js +100 -41
- package/dist/apps/management/routes/invite-links.js.map +1 -1
- package/dist/apps/management/routes/me.d.ts +5 -5
- package/dist/apps/management/routes/me.d.ts.map +1 -1
- package/dist/apps/management/routes/me.js +14 -10
- package/dist/apps/management/routes/me.js.map +1 -1
- package/dist/apps/management/routes/members.d.ts +68 -47
- package/dist/apps/management/routes/members.d.ts.map +1 -1
- package/dist/apps/management/routes/members.js +37 -18
- package/dist/apps/management/routes/members.js.map +1 -1
- package/dist/apps/management/routes/orgs.d.ts +48 -8
- package/dist/apps/management/routes/orgs.d.ts.map +1 -1
- package/dist/apps/management/routes/orgs.js +48 -19
- package/dist/apps/management/routes/orgs.js.map +1 -1
- package/dist/apps/management/routes/projects.d.ts +130 -68
- package/dist/apps/management/routes/projects.d.ts.map +1 -1
- package/dist/apps/management/routes/projects.js +72 -21
- package/dist/apps/management/routes/projects.js.map +1 -1
- package/dist/apps/management/routes/scopes.d.ts.map +1 -1
- package/dist/apps/management/routes/scopes.js +8 -5
- package/dist/apps/management/routes/scopes.js.map +1 -1
- package/dist/apps/management/routes/usage.d.ts +38 -38
- package/dist/apps/management/routes/usage.d.ts.map +1 -1
- package/dist/apps/management/routes/usage.js +41 -31
- package/dist/apps/management/routes/usage.js.map +1 -1
- package/dist/apps/management/routes/verified-token-requests.d.ts +34 -6
- package/dist/apps/management/routes/verified-token-requests.d.ts.map +1 -1
- package/dist/apps/management/routes/verified-token-requests.js +36 -17
- package/dist/apps/management/routes/verified-token-requests.js.map +1 -1
- package/dist/apps/management/routes/webhooks.d.ts +1186 -197
- package/dist/apps/management/routes/webhooks.d.ts.map +1 -1
- package/dist/apps/management/routes/webhooks.js +106 -38
- package/dist/apps/management/routes/webhooks.js.map +1 -1
- package/dist/apps/mpp/internal/Adapter.d.ts +1 -1
- package/dist/apps/mpp/internal/Adapter.d.ts.map +1 -1
- package/dist/apps/mpp/internal/Adapter.js +12 -0
- package/dist/apps/mpp/internal/Adapter.js.map +1 -1
- package/dist/db/Db.d.ts +2 -0
- package/dist/db/Db.d.ts.map +1 -1
- package/dist/db/Db.js +61 -0
- package/dist/db/Db.js.map +1 -1
- package/dist/db/Schema.d.ts +30 -2
- package/dist/db/Schema.d.ts.map +1 -1
- package/dist/db/Schema.js +28 -3
- package/dist/db/Schema.js.map +1 -1
- package/dist/db/tables/earnVaults.d.ts +5 -1
- package/dist/db/tables/earnVaults.d.ts.map +1 -1
- package/dist/db/tables/earnVaults.js +5 -0
- package/dist/db/tables/earnVaults.js.map +1 -1
- package/dist/db/tables/webhookDeliveries.d.ts.map +1 -1
- package/dist/db/tables/webhookDeliveries.js +10 -0
- package/dist/db/tables/webhookDeliveries.js.map +1 -1
- package/dist/db/tables/webhookQueueCompletions.d.ts +15 -0
- package/dist/db/tables/webhookQueueCompletions.d.ts.map +1 -0
- package/dist/db/tables/webhookQueueCompletions.js +32 -0
- package/dist/db/tables/webhookQueueCompletions.js.map +1 -0
- package/dist/db/tables/webhookQueueEvents.d.ts +16 -20
- package/dist/db/tables/webhookQueueEvents.d.ts.map +1 -1
- package/dist/db/tables/webhookQueueEvents.js +68 -43
- package/dist/db/tables/webhookQueueEvents.js.map +1 -1
- package/dist/db/tables/webhookSubscriptions.d.ts +47 -72
- package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -1
- package/dist/db/tables/webhookSubscriptions.js +92 -105
- package/dist/db/tables/webhookSubscriptions.js.map +1 -1
- package/dist/internal/Auth.d.ts +8 -1
- package/dist/internal/Auth.d.ts.map +1 -1
- package/dist/internal/Auth.js +13 -3
- package/dist/internal/Auth.js.map +1 -1
- package/dist/internal/Cache.d.ts.map +1 -1
- package/dist/internal/Cache.js +11 -7
- package/dist/internal/Cache.js.map +1 -1
- package/dist/internal/EarnVaults.d.ts +41 -2
- package/dist/internal/EarnVaults.d.ts.map +1 -1
- package/dist/internal/EarnVaults.js +167 -0
- package/dist/internal/EarnVaults.js.map +1 -1
- package/dist/internal/MetricSink.d.ts +35 -125
- package/dist/internal/MetricSink.d.ts.map +1 -1
- package/dist/internal/MetricSink.js +50 -121
- package/dist/internal/MetricSink.js.map +1 -1
- package/dist/internal/OpenApi.d.ts +26 -22
- package/dist/internal/OpenApi.d.ts.map +1 -1
- package/dist/internal/OpenApi.js +128 -39
- package/dist/internal/OpenApi.js.map +1 -1
- package/dist/internal/Response.d.ts +13 -8
- package/dist/internal/Response.d.ts.map +1 -1
- package/dist/internal/Response.js +16 -5
- package/dist/internal/Response.js.map +1 -1
- package/dist/internal/Schema.d.ts +8 -8
- package/dist/internal/Schema.d.ts.map +1 -1
- package/dist/internal/Schema.js +10 -9
- package/dist/internal/Schema.js.map +1 -1
- package/dist/internal/Store.d.ts +15 -6
- package/dist/internal/Store.d.ts.map +1 -1
- package/dist/internal/Store.js +45 -15
- package/dist/internal/Store.js.map +1 -1
- package/dist/internal/Tidx.d.ts +2 -0
- package/dist/internal/Tidx.d.ts.map +1 -1
- package/dist/internal/Tidx.js +16 -4
- package/dist/internal/Tidx.js.map +1 -1
- package/dist/internal/WebhookTransfer.d.ts +1 -55
- package/dist/internal/WebhookTransfer.d.ts.map +1 -1
- package/dist/internal/WebhookTransfer.js +1 -239
- package/dist/internal/WebhookTransfer.js.map +1 -1
- package/dist/internal/Webhooks.d.ts +112 -56
- package/dist/internal/Webhooks.d.ts.map +1 -1
- package/dist/internal/Webhooks.js +124 -93
- package/dist/internal/Webhooks.js.map +1 -1
- package/dist/internal/funding/Deposit.d.ts +2 -2
- package/dist/internal/funding/Deposit.d.ts.map +1 -1
- package/dist/internal/funding/Deposit.js +9 -8
- package/dist/internal/funding/Deposit.js.map +1 -1
- package/dist/internal/funding/DepositAddress.d.ts +4 -4
- package/dist/internal/funding/DepositAddress.d.ts.map +1 -1
- package/dist/internal/funding/DepositAddress.js +9 -8
- package/dist/internal/funding/DepositAddress.js.map +1 -1
- package/dist/internal/funding/DepositWebhook.d.ts +25 -0
- package/dist/internal/funding/DepositWebhook.d.ts.map +1 -0
- package/dist/internal/funding/DepositWebhook.js +74 -0
- package/dist/internal/funding/DepositWebhook.js.map +1 -0
- package/dist/internal/funding/Provider.d.ts.map +1 -1
- package/dist/internal/funding/Provider.js +13 -12
- package/dist/internal/funding/Provider.js.map +1 -1
- package/dist/internal/funding/Reconciliation.d.ts +6 -0
- package/dist/internal/funding/Reconciliation.d.ts.map +1 -1
- package/dist/internal/funding/Reconciliation.js +42 -10
- package/dist/internal/funding/Reconciliation.js.map +1 -1
- package/dist/internal/funding/index.d.ts +1 -0
- package/dist/internal/funding/index.d.ts.map +1 -1
- package/dist/internal/funding/index.js +1 -0
- package/dist/internal/funding/index.js.map +1 -1
- package/dist/internal/funding/providers/stargate.d.ts +19 -0
- package/dist/internal/funding/providers/stargate.d.ts.map +1 -0
- package/dist/internal/funding/providers/stargate.js +143 -0
- package/dist/internal/funding/providers/stargate.js.map +1 -0
- package/dist/internal/webhookDestinations/slack.d.ts.map +1 -1
- package/dist/internal/webhookDestinations/slack.js +16 -0
- package/dist/internal/webhookDestinations/slack.js.map +1 -1
- package/dist/providers/index.d.ts +7 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +3 -0
- package/dist/providers/index.js.map +1 -1
- package/package.json +2 -2
- package/src/App.test.ts +48 -0
- package/src/App.ts +7 -2
- package/src/Assets.test.ts +18 -0
- package/src/Assets.ts +22 -0
- package/src/Client.test-d.ts +287 -17
- package/src/Webhooks.ts +1 -220
- package/src/admin/apps/earn-vaults.test.ts +143 -0
- package/src/admin/apps/earn-vaults.ts +83 -6
- package/src/admin/apps/organizations.ts +6 -2
- package/src/admin/ui/src/routes/api-keys.tsx +36 -0
- package/src/admin/ui.generated.ts +151 -189
- package/src/apps/data/App.test.ts +31 -0
- package/src/apps/data/App.ts +64 -10
- package/src/apps/data/ZoneSelection.test.ts +196 -0
- package/src/apps/data/ZoneSelection.ts +108 -0
- package/src/apps/data/routes/activities.test.ts +435 -12
- package/src/apps/data/routes/activities.ts +562 -125
- package/src/apps/data/routes/balances.ts +1 -1
- package/src/apps/data/routes/blocks.ts +1 -1
- package/src/apps/data/routes/earn.test.ts +183 -23
- package/src/apps/data/routes/earn.ts +225 -29
- package/src/apps/data/routes/earn.zone-access.test.ts +46 -0
- package/src/apps/data/routes/exchanges.test.ts +31 -1
- package/src/apps/data/routes/exchanges.ts +19 -15
- package/src/apps/data/routes/fee-amm.ts +18 -11
- package/src/apps/data/routes/receipts.ts +1 -1
- package/src/apps/data/routes/rpc.test.ts +75 -0
- package/src/apps/data/routes/rpc.ts +23 -9
- package/src/apps/data/routes/tokenlist.ts +21 -18
- package/src/apps/data/routes/tokens.test.ts +29 -0
- package/src/apps/data/routes/tokens.ts +38 -15
- package/src/apps/data/routes/transactions.ts +1 -1
- package/src/apps/data/routes/transfers.test.ts +3 -3
- package/src/apps/data/routes/transfers.ts +12 -9
- package/src/apps/data/routes/webhooks.test.ts +179 -1497
- package/src/apps/data/routes/webhooks.ts +156 -976
- package/src/apps/data/routes/zones.test.ts +19 -13
- package/src/apps/funding/routes/chains.test.ts +211 -7
- package/src/apps/funding/routes/chains.ts +19 -12
- package/src/apps/funding/routes/deposit-addresses.test.ts +394 -0
- package/src/apps/funding/routes/deposit-addresses.ts +84 -72
- package/src/apps/funding/routes/providers.ts +9 -5
- package/src/apps/funding/routes/quotes.test.ts +46 -0
- package/src/apps/funding/routes/quotes.ts +8 -5
- package/src/apps/funding/routes/transfers.test.ts +35 -32
- package/src/apps/management/Billing.test.ts +26 -0
- package/src/apps/management/Billing.ts +24 -7
- package/src/apps/management/routes/api-keys.test.ts +178 -0
- package/src/apps/management/routes/api-keys.ts +203 -144
- package/src/apps/management/routes/billing.test.ts +209 -0
- package/src/apps/management/routes/billing.ts +254 -177
- package/src/apps/management/routes/faucet.test.ts +39 -0
- package/src/apps/management/routes/faucet.ts +75 -41
- package/src/apps/management/routes/invitations.test.ts +216 -0
- package/src/apps/management/routes/invitations.ts +186 -109
- package/src/apps/management/routes/invite-links.test.ts +263 -1
- package/src/apps/management/routes/invite-links.ts +295 -214
- package/src/apps/management/routes/me.test.ts +49 -0
- package/src/apps/management/routes/me.ts +42 -32
- package/src/apps/management/routes/members.test.ts +124 -1
- package/src/apps/management/routes/members.ts +81 -51
- package/src/apps/management/routes/orgs.test.ts +176 -0
- package/src/apps/management/routes/orgs.ts +101 -59
- package/src/apps/management/routes/projects.test.ts +183 -0
- package/src/apps/management/routes/projects.ts +124 -60
- package/src/apps/management/routes/scopes.test.ts +44 -0
- package/src/apps/management/routes/scopes.ts +37 -28
- package/src/apps/management/routes/usage.test.ts +92 -0
- package/src/apps/management/routes/usage.ts +186 -151
- package/src/apps/management/routes/verified-token-requests.test.ts +114 -0
- package/src/apps/management/routes/verified-token-requests.ts +166 -133
- package/src/apps/management/routes/webhooks.test.ts +313 -1
- package/src/apps/management/routes/webhooks.ts +220 -71
- package/src/apps/mpp/internal/Adapter.ts +13 -1
- package/src/db/Db.test.ts +42 -5
- package/src/db/Db.ts +85 -0
- package/src/db/Schema.ts +41 -3
- package/src/db/tables/earnVaults.test.ts +22 -0
- package/src/db/tables/earnVaults.ts +11 -1
- package/src/db/tables/organizations.test.ts +5 -2
- package/src/db/tables/webhookDeliveries.ts +13 -0
- package/src/db/tables/webhookQueueCompletions.ts +55 -0
- package/src/db/tables/webhookQueueEvents.ts +97 -57
- package/src/db/tables/webhookSubscriptions.ts +134 -144
- package/src/internal/Auth.ts +23 -5
- package/src/internal/Cache.ts +14 -7
- package/src/internal/EarnVaults.capabilities.test.ts +33 -0
- package/src/internal/EarnVaults.test.ts +79 -0
- package/src/internal/EarnVaults.ts +277 -0
- package/src/internal/MetricSink.test.ts +41 -373
- package/src/internal/MetricSink.ts +92 -273
- package/src/internal/OpenApi.ts +165 -49
- package/src/internal/Response.test.ts +95 -0
- package/src/internal/Response.ts +40 -2
- package/src/internal/Schema.test.ts +34 -0
- package/src/internal/Schema.ts +20 -9
- package/src/internal/Store.test.ts +186 -0
- package/src/internal/Store.ts +57 -17
- package/src/internal/Tidx.test.ts +19 -0
- package/src/internal/Tidx.ts +16 -4
- package/src/internal/WebhookTransfer.ts +1 -351
- package/src/internal/Webhooks.test.ts +222 -145
- package/src/internal/Webhooks.ts +234 -135
- package/src/internal/funding/Deposit.ts +71 -64
- package/src/internal/funding/DepositAddress.ts +50 -43
- package/src/internal/funding/DepositWebhook.test.ts +131 -0
- package/src/internal/funding/DepositWebhook.ts +101 -0
- package/src/internal/funding/Provider.ts +164 -142
- package/src/internal/funding/Reconciliation.test.ts +14 -0
- package/src/internal/funding/Reconciliation.ts +161 -86
- package/src/internal/funding/index.test.ts +1 -0
- package/src/internal/funding/index.ts +1 -0
- package/src/internal/funding/providers/index.test.ts +185 -0
- package/src/internal/funding/providers/stargate.ts +184 -0
- package/src/internal/webhookDestinations/slack.ts +15 -0
- package/src/providers/index.test.ts +1 -0
- package/src/providers/index.ts +9 -0
- package/src/Webhooks.bench.ts +0 -714
- package/src/Webhooks.memory.bench.ts +0 -250
- package/src/Webhooks.test.ts +0 -146
|
@@ -28,148 +28,160 @@ export namespace schema {
|
|
|
28
28
|
* An organization's verification request (response shape). `reviewedBy` is
|
|
29
29
|
* deliberately absent: reviewer identity stays on the admin surface.
|
|
30
30
|
*/
|
|
31
|
-
export const VerifiedTokenRequest =
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
.
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
.check(
|
|
43
|
-
z.describe('Opaque request resource id (`vtr_…`).'),
|
|
44
|
-
z.meta({ examples: ['vtr_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
45
|
-
),
|
|
46
|
-
logo: z.optional(
|
|
47
|
-
z
|
|
31
|
+
export const VerifiedTokenRequest = OpenApi.component(
|
|
32
|
+
Schema.describe(
|
|
33
|
+
z.extend(tokenSchema.Input, {
|
|
34
|
+
chainId,
|
|
35
|
+
createdAt: z.iso
|
|
36
|
+
.datetime()
|
|
37
|
+
.check(
|
|
38
|
+
z.describe('When the request was created (ISO 8601).'),
|
|
39
|
+
z.meta({ examples: ['2026-01-01T00:00:00.000Z'] }),
|
|
40
|
+
),
|
|
41
|
+
id: z
|
|
48
42
|
.string()
|
|
49
43
|
.check(
|
|
50
|
-
z.describe('
|
|
51
|
-
z.meta({ examples: ['
|
|
44
|
+
z.describe('Opaque request resource id (`vtr_…`).'),
|
|
45
|
+
z.meta({ examples: ['vtr_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
52
46
|
),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
orgId: z
|
|
61
|
-
.string()
|
|
62
|
-
.check(
|
|
63
|
-
z.describe('Requesting organization id (`org_…`).'),
|
|
64
|
-
z.meta({ examples: ['org_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
65
|
-
),
|
|
66
|
-
requestedBy: z
|
|
67
|
-
.string()
|
|
68
|
-
.check(
|
|
69
|
-
z.describe('User id that submitted the request.'),
|
|
70
|
-
z.meta({ examples: ['usr_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
71
|
-
),
|
|
72
|
-
reviewNote: z
|
|
73
|
-
.nullable(z.string())
|
|
74
|
-
.check(
|
|
75
|
-
z.describe('Reviewer note shown when the request was denied, or null.'),
|
|
76
|
-
z.meta({ examples: ['Logo URL is unreachable.', null] }),
|
|
77
|
-
),
|
|
78
|
-
reviewedAt: z
|
|
79
|
-
.nullable(z.string())
|
|
80
|
-
.check(
|
|
81
|
-
z.describe('When the request was reviewed (ISO 8601), or null while pending.'),
|
|
82
|
-
z.meta({ examples: ['2026-01-02T00:00:00.000Z', null] }),
|
|
83
|
-
),
|
|
84
|
-
status: z
|
|
85
|
-
.enum(['approved', 'denied', 'pending'])
|
|
86
|
-
.check(z.describe('Review status of the request.'), z.meta({ examples: ['pending'] })),
|
|
87
|
-
updatedAt: z
|
|
88
|
-
.string()
|
|
89
|
-
.check(
|
|
90
|
-
z.describe('When the request was last changed (ISO 8601).'),
|
|
91
|
-
z.meta({ examples: ['2026-01-01T00:00:00.000Z'] }),
|
|
47
|
+
logo: z.optional(
|
|
48
|
+
z
|
|
49
|
+
.string()
|
|
50
|
+
.check(
|
|
51
|
+
z.describe('Inline SVG logo markup uploaded with the request, when present.'),
|
|
52
|
+
z.meta({ examples: ['<svg xmlns="http://www.w3.org/2000/svg"/>'] }),
|
|
53
|
+
),
|
|
92
54
|
),
|
|
93
|
-
|
|
94
|
-
|
|
55
|
+
note: z
|
|
56
|
+
.nullable(z.string())
|
|
57
|
+
.check(
|
|
58
|
+
z.describe('Requester note to the reviewers, or null.'),
|
|
59
|
+
z.meta({ examples: ['We are the token issuer.', null] }),
|
|
60
|
+
),
|
|
61
|
+
orgId: z
|
|
62
|
+
.string()
|
|
63
|
+
.check(
|
|
64
|
+
z.describe('Requesting organization id (`org_…`).'),
|
|
65
|
+
z.meta({ examples: ['org_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
66
|
+
),
|
|
67
|
+
requestedBy: z
|
|
68
|
+
.string()
|
|
69
|
+
.check(
|
|
70
|
+
z.describe('User id that submitted the request.'),
|
|
71
|
+
z.meta({ examples: ['usr_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
72
|
+
),
|
|
73
|
+
reviewNote: z
|
|
74
|
+
.nullable(z.string())
|
|
75
|
+
.check(
|
|
76
|
+
z.describe('Reviewer note shown when the request was denied, or null.'),
|
|
77
|
+
z.meta({ examples: ['Logo URL is unreachable.', null] }),
|
|
78
|
+
),
|
|
79
|
+
reviewedAt: z
|
|
80
|
+
.nullable(z.iso.datetime())
|
|
81
|
+
.check(
|
|
82
|
+
z.describe('When the request was reviewed (ISO 8601), or null while pending.'),
|
|
83
|
+
z.meta({ examples: ['2026-01-02T00:00:00.000Z', null] }),
|
|
84
|
+
),
|
|
85
|
+
status: z
|
|
86
|
+
.enum(['approved', 'denied', 'pending'])
|
|
87
|
+
.check(z.describe('Review status of the request.'), z.meta({ examples: ['pending'] })),
|
|
88
|
+
updatedAt: z.iso
|
|
89
|
+
.datetime()
|
|
90
|
+
.check(
|
|
91
|
+
z.describe('When the request was last changed (ISO 8601).'),
|
|
92
|
+
z.meta({ examples: ['2026-01-01T00:00:00.000Z'] }),
|
|
93
|
+
),
|
|
94
|
+
}),
|
|
95
|
+
"An organization's request to add a token to the curated verified list.",
|
|
96
|
+
),
|
|
97
|
+
'VerifiedTokenRequest',
|
|
95
98
|
)
|
|
96
99
|
|
|
97
100
|
/**
|
|
98
101
|
* Create body. The shared token fields trust admin curation, so the
|
|
99
102
|
* member-facing surface re-declares them with length caps.
|
|
100
103
|
*/
|
|
101
|
-
export const CreateBody =
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
logo: z.optional(
|
|
113
|
-
z.string().check(
|
|
114
|
-
z.refine(
|
|
115
|
-
(value) => /^<(\?xml|svg)[\s/>]/i.test(value.trimStart()),
|
|
116
|
-
'Logo must be SVG markup.',
|
|
104
|
+
export const CreateBody = OpenApi.component(
|
|
105
|
+
Schema.describe(
|
|
106
|
+
z.extend(tokenSchema.Input, {
|
|
107
|
+
chainId: Schema.ChainId,
|
|
108
|
+
currency: z
|
|
109
|
+
.string()
|
|
110
|
+
.check(
|
|
111
|
+
z.minLength(1),
|
|
112
|
+
z.maxLength(10),
|
|
113
|
+
z.describe('The currency label for this token, such as `USD`.'),
|
|
114
|
+
z.meta({ examples: ['USD'] }),
|
|
117
115
|
),
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
116
|
+
logo: z.optional(
|
|
117
|
+
z.string().check(
|
|
118
|
+
z.refine(
|
|
119
|
+
(value) => /^<(\?xml|svg)[\s/>]/i.test(value.trimStart()),
|
|
120
|
+
'Logo must be SVG markup.',
|
|
121
|
+
),
|
|
122
|
+
z.refine(
|
|
123
|
+
(value) => new TextEncoder().encode(value).byteLength <= maxLogoBytes,
|
|
124
|
+
`Logo exceeds the ${maxLogoBytes / 1024} KiB limit.`,
|
|
125
|
+
),
|
|
126
|
+
z.describe('Inline SVG logo markup, published to the asset store on approval.'),
|
|
127
|
+
z.meta({ examples: ['<svg xmlns="http://www.w3.org/2000/svg"/>'] }),
|
|
121
128
|
),
|
|
122
|
-
z.describe('Inline SVG logo markup, published to the asset store on approval.'),
|
|
123
|
-
z.meta({ examples: ['<svg xmlns="http://www.w3.org/2000/svg"/>'] }),
|
|
124
129
|
),
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
130
|
+
logoUri: z.optional(
|
|
131
|
+
z
|
|
132
|
+
.url({ protocol: /^https$/ })
|
|
133
|
+
.check(
|
|
134
|
+
z.maxLength(2048),
|
|
135
|
+
z.describe('The HTTPS URL for this token’s logo image, when one is set.'),
|
|
136
|
+
z.meta({ examples: ['https://assets.tempo.xyz/icons/usdc.svg'] }),
|
|
137
|
+
),
|
|
138
|
+
),
|
|
139
|
+
name: z
|
|
140
|
+
.string()
|
|
129
141
|
.check(
|
|
130
|
-
z.
|
|
131
|
-
z.
|
|
132
|
-
z.
|
|
142
|
+
z.minLength(1),
|
|
143
|
+
z.maxLength(100),
|
|
144
|
+
z.describe('The token’s human-readable name.'),
|
|
145
|
+
z.meta({ examples: ['USD Coin'] }),
|
|
133
146
|
),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
147
|
+
note: z.optional(
|
|
148
|
+
z
|
|
149
|
+
.string()
|
|
150
|
+
.check(
|
|
151
|
+
z.trim(),
|
|
152
|
+
z.maxLength(500),
|
|
153
|
+
z.describe('Optional note to the reviewers.'),
|
|
154
|
+
z.meta({ examples: ['We are the token issuer.'] }),
|
|
155
|
+
),
|
|
142
156
|
),
|
|
143
|
-
|
|
144
|
-
z
|
|
157
|
+
symbol: z
|
|
145
158
|
.string()
|
|
146
159
|
.check(
|
|
147
|
-
z.
|
|
148
|
-
z.maxLength(
|
|
149
|
-
z.describe('
|
|
150
|
-
z.meta({ examples: ['
|
|
160
|
+
z.minLength(1),
|
|
161
|
+
z.maxLength(20),
|
|
162
|
+
z.describe('The short ticker symbol wallets and apps show for this token.'),
|
|
163
|
+
z.meta({ examples: ['USDC'] }),
|
|
151
164
|
),
|
|
152
|
-
),
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
z.minLength(1),
|
|
157
|
-
z.maxLength(20),
|
|
158
|
-
z.describe('The short ticker symbol wallets and apps show for this token.'),
|
|
159
|
-
z.meta({ examples: ['USDC'] }),
|
|
160
|
-
),
|
|
161
|
-
}),
|
|
162
|
-
'Fields for requesting verification of a token.',
|
|
165
|
+
}),
|
|
166
|
+
'Fields for requesting verification of a token.',
|
|
167
|
+
),
|
|
168
|
+
'CreateVerifiedTokenRequestInput',
|
|
163
169
|
)
|
|
164
170
|
|
|
165
171
|
/** Non-paginated list of an organization's requests. */
|
|
166
|
-
export const ListResponse =
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
172
|
+
export const ListResponse = OpenApi.component(
|
|
173
|
+
Schema.describe(
|
|
174
|
+
z.object({
|
|
175
|
+
data: z
|
|
176
|
+
.array(VerifiedTokenRequest)
|
|
177
|
+
.check(
|
|
178
|
+
z.describe("The organization's verification requests, newest first."),
|
|
179
|
+
z.meta({ examples: [[]] }),
|
|
180
|
+
),
|
|
181
|
+
}),
|
|
182
|
+
"A non-paginated list of an organization's verified-token requests.",
|
|
183
|
+
),
|
|
184
|
+
'VerifiedTokenRequestList',
|
|
173
185
|
)
|
|
174
186
|
|
|
175
187
|
/** Path parameters addressing an organization's requests. */
|
|
@@ -203,16 +215,19 @@ export namespace schema {
|
|
|
203
215
|
.check(z.describe('Path parameters for one verified-token request.'))
|
|
204
216
|
|
|
205
217
|
/** Cancel confirmation. */
|
|
206
|
-
export const DeleteResponse =
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
218
|
+
export const DeleteResponse = OpenApi.component(
|
|
219
|
+
z
|
|
220
|
+
.object({
|
|
221
|
+
id: z
|
|
222
|
+
.string()
|
|
223
|
+
.check(
|
|
224
|
+
z.describe('Canceled request resource id.'),
|
|
225
|
+
z.meta({ examples: ['vtr_1a2b3c4d5e6f7g8h9j0k1m2n'] }),
|
|
226
|
+
),
|
|
227
|
+
})
|
|
228
|
+
.check(z.describe('Confirmation that a verified-token request was canceled.')),
|
|
229
|
+
'CancelVerifiedTokenRequestResponse',
|
|
230
|
+
)
|
|
216
231
|
}
|
|
217
232
|
|
|
218
233
|
const bodyValidation = {
|
|
@@ -240,7 +255,14 @@ export function verifiedTokenRequests() {
|
|
|
240
255
|
operationId: 'createVerifiedTokenRequest',
|
|
241
256
|
responses: OpenApi.responses({
|
|
242
257
|
errors: {
|
|
243
|
-
|
|
258
|
+
400: {
|
|
259
|
+
codes: ['body_invalid', 'param_invalid'],
|
|
260
|
+
description: 'Malformed API key, invalid path, or invalid body.',
|
|
261
|
+
},
|
|
262
|
+
404: {
|
|
263
|
+
codes: ['organization_not_found'],
|
|
264
|
+
description: 'No accessible organization was found.',
|
|
265
|
+
},
|
|
244
266
|
409: {
|
|
245
267
|
codes: ['request_limit_reached', 'request_pending_exists', 'verified_symbol_exists', 'verified_token_exists'], // prettier-ignore
|
|
246
268
|
description: 'The token is already verified or requested, or the organization is at its pending-request limit.', // prettier-ignore
|
|
@@ -254,6 +276,7 @@ export function verifiedTokenRequests() {
|
|
|
254
276
|
async (c) => {
|
|
255
277
|
if (Auth.narrowAccess) return Auth.superAdminAccessError(c)
|
|
256
278
|
if (Auth.narrowScope) return Auth.ensureOrgError(c)
|
|
279
|
+
if (OpenApi.narrowValidation) return OpenApi.validationError(c, paramValidation)
|
|
257
280
|
if (OpenApi.narrowValidation) return OpenApi.validationError(c, bodyValidation)
|
|
258
281
|
const body = c.req.valid('json')
|
|
259
282
|
try {
|
|
@@ -319,7 +342,13 @@ export function verifiedTokenRequests() {
|
|
|
319
342
|
OpenApi.describeRoute({
|
|
320
343
|
operationId: 'listVerifiedTokenRequests',
|
|
321
344
|
responses: OpenApi.responses({
|
|
322
|
-
errors: {
|
|
345
|
+
errors: {
|
|
346
|
+
400: { codes: ['param_invalid'], description: 'Malformed API key or invalid path.' },
|
|
347
|
+
404: {
|
|
348
|
+
codes: ['organization_not_found'],
|
|
349
|
+
description: 'No accessible organization was found.',
|
|
350
|
+
},
|
|
351
|
+
},
|
|
323
352
|
success: { description: 'Verification requests.', schema: schema.ListResponse },
|
|
324
353
|
}),
|
|
325
354
|
summary: 'List token requests',
|
|
@@ -351,7 +380,11 @@ export function verifiedTokenRequests() {
|
|
|
351
380
|
operationId: 'cancelVerifiedTokenRequest',
|
|
352
381
|
responses: OpenApi.responses({
|
|
353
382
|
errors: {
|
|
354
|
-
|
|
383
|
+
400: { codes: ['param_invalid'], description: 'Malformed API key or invalid path.' },
|
|
384
|
+
404: {
|
|
385
|
+
codes: ['organization_not_found', 'verified_token_request_not_found'],
|
|
386
|
+
description: 'No accessible organization or verification request was found.',
|
|
387
|
+
},
|
|
355
388
|
409: {
|
|
356
389
|
codes: ['request_not_pending'],
|
|
357
390
|
description: 'Only pending requests can be canceled.',
|