tapimo 0.0.2 → 0.2.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.
Files changed (517) hide show
  1. package/README.md +38 -16
  2. package/dist/ApiKey.d.ts +14 -11
  3. package/dist/ApiKey.d.ts.map +1 -1
  4. package/dist/ApiKey.js +11 -12
  5. package/dist/ApiKey.js.map +1 -1
  6. package/dist/ApiKeys.d.ts +207 -0
  7. package/dist/ApiKeys.d.ts.map +1 -0
  8. package/dist/ApiKeys.js +282 -0
  9. package/dist/ApiKeys.js.map +1 -0
  10. package/dist/App.d.ts +6771 -3819
  11. package/dist/App.d.ts.map +1 -1
  12. package/dist/App.js +145 -317
  13. package/dist/App.js.map +1 -1
  14. package/dist/Handler.d.ts +86 -0
  15. package/dist/Handler.d.ts.map +1 -0
  16. package/dist/Handler.js +83 -0
  17. package/dist/Handler.js.map +1 -0
  18. package/dist/Scope.d.ts +14 -4
  19. package/dist/Scope.d.ts.map +1 -1
  20. package/dist/Scope.js +16 -4
  21. package/dist/Scope.js.map +1 -1
  22. package/dist/Webhooks.d.ts +5 -7
  23. package/dist/Webhooks.d.ts.map +1 -1
  24. package/dist/Webhooks.js +11 -4
  25. package/dist/Webhooks.js.map +1 -1
  26. package/dist/admin/Access.d.ts +1 -3
  27. package/dist/admin/Access.d.ts.map +1 -1
  28. package/dist/admin/Access.js +1 -3
  29. package/dist/admin/Access.js.map +1 -1
  30. package/dist/admin/App.d.ts +167 -205
  31. package/dist/admin/App.d.ts.map +1 -1
  32. package/dist/admin/App.js +2 -4
  33. package/dist/admin/App.js.map +1 -1
  34. package/dist/admin/apps/api-keys.d.ts +105 -5
  35. package/dist/admin/apps/api-keys.d.ts.map +1 -1
  36. package/dist/admin/apps/api-keys.js +75 -9
  37. package/dist/admin/apps/api-keys.js.map +1 -1
  38. package/dist/admin/apps/scopes.d.ts +6 -0
  39. package/dist/admin/apps/scopes.d.ts.map +1 -1
  40. package/dist/admin/apps/verified-tokens.d.ts +35 -149
  41. package/dist/admin/apps/verified-tokens.d.ts.map +1 -1
  42. package/dist/admin/apps/verified-tokens.js +18 -39
  43. package/dist/admin/apps/verified-tokens.js.map +1 -1
  44. package/dist/admin/ui.generated.d.ts +1 -1
  45. package/dist/admin/ui.generated.js +1 -1
  46. package/dist/apps/data/App.d.ts +19176 -0
  47. package/dist/apps/data/App.d.ts.map +1 -0
  48. package/dist/apps/data/App.js +236 -0
  49. package/dist/apps/data/App.js.map +1 -0
  50. package/dist/apps/data/index.d.ts +3 -0
  51. package/dist/apps/data/index.d.ts.map +1 -0
  52. package/dist/apps/data/index.js +3 -0
  53. package/dist/apps/data/index.js.map +1 -0
  54. package/dist/apps/{activities.d.ts → data/routes/activities.d.ts} +32 -32
  55. package/dist/apps/{activities.d.ts.map → data/routes/activities.d.ts.map} +1 -1
  56. package/dist/apps/{activities.js → data/routes/activities.js} +13 -13
  57. package/dist/apps/data/routes/activities.js.map +1 -0
  58. package/dist/apps/{addresses.d.ts → data/routes/addresses.d.ts} +22 -22
  59. package/dist/apps/{addresses.d.ts.map → data/routes/addresses.d.ts.map} +1 -1
  60. package/dist/apps/{addresses.js → data/routes/addresses.js} +5 -5
  61. package/dist/apps/data/routes/addresses.js.map +1 -0
  62. package/dist/apps/{balances.d.ts → data/routes/balances.d.ts} +49 -49
  63. package/dist/apps/data/routes/balances.d.ts.map +1 -0
  64. package/dist/apps/{balances.js → data/routes/balances.js} +42 -11
  65. package/dist/apps/data/routes/balances.js.map +1 -0
  66. package/dist/apps/{blocks.d.ts → data/routes/blocks.d.ts} +47 -47
  67. package/dist/apps/data/routes/blocks.d.ts.map +1 -0
  68. package/dist/apps/{blocks.js → data/routes/blocks.js} +13 -13
  69. package/dist/apps/data/routes/blocks.js.map +1 -0
  70. package/dist/apps/{coingecko.d.ts → data/routes/coingecko.d.ts} +183 -183
  71. package/dist/apps/data/routes/coingecko.d.ts.map +1 -0
  72. package/dist/apps/{coingecko.js → data/routes/coingecko.js} +13 -13
  73. package/dist/apps/data/routes/coingecko.js.map +1 -0
  74. package/dist/apps/{exchanges.d.ts → data/routes/exchanges.d.ts} +460 -460
  75. package/dist/apps/data/routes/exchanges.d.ts.map +1 -0
  76. package/dist/apps/{exchanges.js → data/routes/exchanges.js} +19 -19
  77. package/dist/apps/data/routes/exchanges.js.map +1 -0
  78. package/dist/apps/{fee-amm.d.ts → data/routes/fee-amm.d.ts} +94 -94
  79. package/dist/apps/data/routes/fee-amm.d.ts.map +1 -0
  80. package/dist/apps/{fee-amm.js → data/routes/fee-amm.js} +17 -17
  81. package/dist/apps/data/routes/fee-amm.js.map +1 -0
  82. package/dist/apps/{indexer.d.ts → data/routes/indexer.d.ts} +4 -4
  83. package/dist/apps/data/routes/indexer.d.ts.map +1 -0
  84. package/dist/apps/{indexer.js → data/routes/indexer.js} +13 -9
  85. package/dist/apps/data/routes/indexer.js.map +1 -0
  86. package/dist/apps/{receipts.d.ts → data/routes/receipts.d.ts} +6 -6
  87. package/dist/apps/data/routes/receipts.d.ts.map +1 -0
  88. package/dist/apps/{receipts.js → data/routes/receipts.js} +12 -12
  89. package/dist/apps/data/routes/receipts.js.map +1 -0
  90. package/dist/apps/{rpc.d.ts → data/routes/rpc.d.ts} +4 -4
  91. package/dist/apps/data/routes/rpc.d.ts.map +1 -0
  92. package/dist/apps/{rpc.js → data/routes/rpc.js} +6 -6
  93. package/dist/apps/data/routes/rpc.js.map +1 -0
  94. package/dist/apps/{tokenlist.d.ts → data/routes/tokenlist.d.ts} +4 -4
  95. package/dist/apps/data/routes/tokenlist.d.ts.map +1 -0
  96. package/dist/apps/{tokenlist.js → data/routes/tokenlist.js} +8 -8
  97. package/dist/apps/data/routes/tokenlist.js.map +1 -0
  98. package/dist/apps/{tokens.d.ts → data/routes/tokens.d.ts} +11 -11
  99. package/dist/apps/data/routes/tokens.d.ts.map +1 -0
  100. package/dist/apps/{tokens.js → data/routes/tokens.js} +19 -19
  101. package/dist/apps/data/routes/tokens.js.map +1 -0
  102. package/dist/apps/{transactions.d.ts → data/routes/transactions.d.ts} +288 -288
  103. package/dist/apps/data/routes/transactions.d.ts.map +1 -0
  104. package/dist/apps/{transactions.js → data/routes/transactions.js} +13 -13
  105. package/dist/apps/data/routes/transactions.js.map +1 -0
  106. package/dist/apps/{transfers.d.ts → data/routes/transfers.d.ts} +35 -35
  107. package/dist/apps/data/routes/transfers.d.ts.map +1 -0
  108. package/dist/apps/{transfers.js → data/routes/transfers.js} +13 -13
  109. package/dist/apps/data/routes/transfers.js.map +1 -0
  110. package/dist/apps/{verified-tokens.d.ts → data/routes/verified-tokens.d.ts} +42 -42
  111. package/dist/apps/data/routes/verified-tokens.d.ts.map +1 -0
  112. package/dist/apps/{verified-tokens.js → data/routes/verified-tokens.js} +9 -9
  113. package/dist/apps/data/routes/verified-tokens.js.map +1 -0
  114. package/dist/apps/{webhooks.d.ts → data/routes/webhooks.d.ts} +66 -63
  115. package/dist/apps/{webhooks.d.ts.map → data/routes/webhooks.d.ts.map} +1 -1
  116. package/dist/apps/{webhooks.js → data/routes/webhooks.js} +67 -59
  117. package/dist/apps/data/routes/webhooks.js.map +1 -0
  118. package/dist/apps/docs/App.d.ts +27 -0
  119. package/dist/apps/docs/App.d.ts.map +1 -0
  120. package/dist/apps/docs/App.js +122 -0
  121. package/dist/apps/docs/App.js.map +1 -0
  122. package/dist/{internal/OpenApi.fonts.d.ts → apps/docs/fonts.d.ts} +1 -1
  123. package/dist/apps/docs/fonts.d.ts.map +1 -0
  124. package/dist/{internal/OpenApi.fonts.js → apps/docs/fonts.js} +1 -1
  125. package/dist/apps/docs/fonts.js.map +1 -0
  126. package/dist/apps/docs/index.d.ts +2 -0
  127. package/dist/apps/docs/index.d.ts.map +1 -0
  128. package/dist/apps/docs/index.js +2 -0
  129. package/dist/apps/docs/index.js.map +1 -0
  130. package/dist/{internal/OpenApi.logo.d.ts → apps/docs/logo.d.ts} +1 -1
  131. package/dist/apps/docs/logo.d.ts.map +1 -0
  132. package/dist/{internal/OpenApi.logo.js → apps/docs/logo.js} +1 -1
  133. package/dist/apps/docs/logo.js.map +1 -0
  134. package/dist/apps/index.d.ts +4 -0
  135. package/dist/apps/index.d.ts.map +1 -0
  136. package/dist/apps/index.js +4 -0
  137. package/dist/apps/index.js.map +1 -0
  138. package/dist/apps/metadata.d.ts +7 -0
  139. package/dist/apps/metadata.d.ts.map +1 -0
  140. package/dist/apps/metadata.js +15 -0
  141. package/dist/apps/metadata.js.map +1 -0
  142. package/dist/apps/platform/App.d.ts +2985 -0
  143. package/dist/apps/platform/App.d.ts.map +1 -0
  144. package/dist/apps/platform/App.js +74 -0
  145. package/dist/apps/platform/App.js.map +1 -0
  146. package/dist/apps/platform/index.d.ts +2 -0
  147. package/dist/apps/platform/index.d.ts.map +1 -0
  148. package/dist/apps/platform/index.js +2 -0
  149. package/dist/apps/platform/index.js.map +1 -0
  150. package/dist/apps/platform/routes/api-keys.d.ts +681 -0
  151. package/dist/apps/platform/routes/api-keys.d.ts.map +1 -0
  152. package/dist/apps/platform/routes/api-keys.js +328 -0
  153. package/dist/apps/platform/routes/api-keys.js.map +1 -0
  154. package/dist/apps/platform/routes/invitations.d.ts +733 -0
  155. package/dist/apps/platform/routes/invitations.d.ts.map +1 -0
  156. package/dist/apps/platform/routes/invitations.js +413 -0
  157. package/dist/apps/platform/routes/invitations.js.map +1 -0
  158. package/dist/apps/platform/routes/me.d.ts +95 -0
  159. package/dist/apps/platform/routes/me.d.ts.map +1 -0
  160. package/dist/apps/platform/routes/me.js +81 -0
  161. package/dist/apps/platform/routes/me.js.map +1 -0
  162. package/dist/apps/platform/routes/members.d.ts +554 -0
  163. package/dist/apps/platform/routes/members.d.ts.map +1 -0
  164. package/dist/apps/platform/routes/members.js +251 -0
  165. package/dist/apps/platform/routes/members.js.map +1 -0
  166. package/dist/apps/platform/routes/orgs.d.ts +582 -0
  167. package/dist/apps/platform/routes/orgs.d.ts.map +1 -0
  168. package/dist/apps/platform/routes/orgs.js +265 -0
  169. package/dist/apps/platform/routes/orgs.js.map +1 -0
  170. package/dist/apps/platform/routes/projects.d.ts +740 -0
  171. package/dist/apps/platform/routes/projects.d.ts.map +1 -0
  172. package/dist/apps/platform/routes/projects.js +286 -0
  173. package/dist/apps/platform/routes/projects.js.map +1 -0
  174. package/dist/apps/relay/App.d.ts +41 -0
  175. package/dist/apps/relay/App.d.ts.map +1 -0
  176. package/dist/apps/relay/App.js +103 -0
  177. package/dist/apps/relay/App.js.map +1 -0
  178. package/dist/apps/relay/Sponsorships.d.ts +107 -0
  179. package/dist/apps/relay/Sponsorships.d.ts.map +1 -0
  180. package/dist/apps/relay/Sponsorships.js +193 -0
  181. package/dist/apps/relay/Sponsorships.js.map +1 -0
  182. package/dist/apps/relay/index.d.ts +3 -0
  183. package/dist/apps/relay/index.d.ts.map +1 -0
  184. package/dist/apps/relay/index.js +3 -0
  185. package/dist/apps/relay/index.js.map +1 -0
  186. package/dist/{Cli.d.ts → cli/Cli.d.ts} +13 -2
  187. package/dist/cli/Cli.d.ts.map +1 -0
  188. package/dist/cli/Cli.js +19 -0
  189. package/dist/cli/Cli.js.map +1 -0
  190. package/dist/cli/bin.d.ts +3 -0
  191. package/dist/cli/bin.d.ts.map +1 -0
  192. package/dist/cli/bin.js +4 -0
  193. package/dist/cli/bin.js.map +1 -0
  194. package/dist/cli/commands/admin.d.ts +15 -0
  195. package/dist/cli/commands/admin.d.ts.map +1 -0
  196. package/dist/cli/commands/admin.js +60 -0
  197. package/dist/cli/commands/admin.js.map +1 -0
  198. package/dist/cloudflare.d.ts +7 -0
  199. package/dist/cloudflare.d.ts.map +1 -1
  200. package/dist/cloudflare.js +9 -0
  201. package/dist/cloudflare.js.map +1 -1
  202. package/dist/db/Db.d.ts +113 -0
  203. package/dist/db/Db.d.ts.map +1 -0
  204. package/dist/db/Db.js +402 -0
  205. package/dist/db/Db.js.map +1 -0
  206. package/dist/db/Schema.d.ts +168 -0
  207. package/dist/db/Schema.d.ts.map +1 -0
  208. package/dist/db/Schema.js +229 -0
  209. package/dist/db/Schema.js.map +1 -0
  210. package/dist/db/tables/invitations.d.ts +84 -0
  211. package/dist/db/tables/invitations.d.ts.map +1 -0
  212. package/dist/db/tables/invitations.js +165 -0
  213. package/dist/db/tables/invitations.js.map +1 -0
  214. package/dist/db/tables/memberships.d.ts +108 -0
  215. package/dist/db/tables/memberships.d.ts.map +1 -0
  216. package/dist/db/tables/memberships.js +153 -0
  217. package/dist/db/tables/memberships.js.map +1 -0
  218. package/dist/db/tables/organizations.d.ts +123 -0
  219. package/dist/db/tables/organizations.d.ts.map +1 -0
  220. package/dist/db/tables/organizations.js +170 -0
  221. package/dist/db/tables/organizations.js.map +1 -0
  222. package/dist/db/tables/projects.d.ts +65 -0
  223. package/dist/db/tables/projects.d.ts.map +1 -0
  224. package/dist/db/tables/projects.js +75 -0
  225. package/dist/db/tables/projects.js.map +1 -0
  226. package/dist/db/tables/sponsoredTransactions.d.ts +120 -0
  227. package/dist/db/tables/sponsoredTransactions.d.ts.map +1 -0
  228. package/dist/db/tables/sponsoredTransactions.js +161 -0
  229. package/dist/db/tables/sponsoredTransactions.js.map +1 -0
  230. package/dist/db/tables/users.d.ts +48 -0
  231. package/dist/db/tables/users.d.ts.map +1 -0
  232. package/dist/db/tables/users.js +65 -0
  233. package/dist/db/tables/users.js.map +1 -0
  234. package/dist/db/tables/verifiedTokens.d.ts +53 -0
  235. package/dist/db/tables/verifiedTokens.d.ts.map +1 -0
  236. package/dist/db/tables/verifiedTokens.js +74 -0
  237. package/dist/db/tables/verifiedTokens.js.map +1 -0
  238. package/dist/db/tables/webhookDeliveries.d.ts +71 -0
  239. package/dist/db/tables/webhookDeliveries.d.ts.map +1 -0
  240. package/dist/db/tables/webhookDeliveries.js +119 -0
  241. package/dist/db/tables/webhookDeliveries.js.map +1 -0
  242. package/dist/db/tables/webhookSubscriptions.d.ts +158 -0
  243. package/dist/db/tables/webhookSubscriptions.d.ts.map +1 -0
  244. package/dist/db/tables/webhookSubscriptions.js +272 -0
  245. package/dist/db/tables/webhookSubscriptions.js.map +1 -0
  246. package/dist/handlers/internal/executionError.d.ts +25 -0
  247. package/dist/handlers/internal/executionError.d.ts.map +1 -0
  248. package/dist/handlers/internal/executionError.js +186 -0
  249. package/dist/handlers/internal/executionError.js.map +1 -0
  250. package/dist/handlers/internal/multisig.d.ts +233 -0
  251. package/dist/handlers/internal/multisig.d.ts.map +1 -0
  252. package/dist/handlers/internal/multisig.js +542 -0
  253. package/dist/handlers/internal/multisig.js.map +1 -0
  254. package/dist/handlers/internal/requestListener.d.ts +124 -0
  255. package/dist/handlers/internal/requestListener.d.ts.map +1 -0
  256. package/dist/handlers/internal/requestListener.js +173 -0
  257. package/dist/handlers/internal/requestListener.js.map +1 -0
  258. package/dist/handlers/internal/sponsorship.d.ts +113 -0
  259. package/dist/handlers/internal/sponsorship.d.ts.map +1 -0
  260. package/dist/handlers/internal/sponsorship.js +128 -0
  261. package/dist/handlers/internal/sponsorship.js.map +1 -0
  262. package/dist/handlers/internal/types.d.ts +284 -0
  263. package/dist/handlers/internal/types.d.ts.map +1 -0
  264. package/dist/handlers/internal/types.js +2 -0
  265. package/dist/handlers/internal/types.js.map +1 -0
  266. package/dist/handlers/internal/utils.d.ts +34 -0
  267. package/dist/handlers/internal/utils.d.ts.map +1 -0
  268. package/dist/handlers/internal/utils.js +131 -0
  269. package/dist/handlers/internal/utils.js.map +1 -0
  270. package/dist/handlers/relay.d.ts +123 -0
  271. package/dist/handlers/relay.d.ts.map +1 -0
  272. package/dist/handlers/relay.js +1278 -0
  273. package/dist/handlers/relay.js.map +1 -0
  274. package/dist/index.d.ts +4 -2
  275. package/dist/index.d.ts.map +1 -1
  276. package/dist/index.js +4 -2
  277. package/dist/index.js.map +1 -1
  278. package/dist/internal/Auth.d.ts +224 -16
  279. package/dist/internal/Auth.d.ts.map +1 -1
  280. package/dist/internal/Auth.js +572 -33
  281. package/dist/internal/Auth.js.map +1 -1
  282. package/dist/internal/Log.d.ts +7 -3
  283. package/dist/internal/Log.d.ts.map +1 -1
  284. package/dist/internal/Log.js +4 -0
  285. package/dist/internal/Log.js.map +1 -1
  286. package/dist/internal/OpenApi.d.ts +0 -19
  287. package/dist/internal/OpenApi.d.ts.map +1 -1
  288. package/dist/internal/OpenApi.js +0 -57
  289. package/dist/internal/OpenApi.js.map +1 -1
  290. package/dist/internal/RpcSchema.d.ts +10 -0
  291. package/dist/internal/RpcSchema.d.ts.map +1 -0
  292. package/dist/internal/RpcSchema.js +2 -0
  293. package/dist/internal/RpcSchema.js.map +1 -0
  294. package/dist/internal/Store.d.ts +49 -4
  295. package/dist/internal/Store.d.ts.map +1 -1
  296. package/dist/internal/Store.js +81 -5
  297. package/dist/internal/Store.js.map +1 -1
  298. package/dist/internal/VerifiedTokens.d.ts +15 -34
  299. package/dist/internal/VerifiedTokens.d.ts.map +1 -1
  300. package/dist/internal/VerifiedTokens.js +115 -159
  301. package/dist/internal/VerifiedTokens.js.map +1 -1
  302. package/dist/internal/Viem.d.ts +84 -0
  303. package/dist/internal/Viem.d.ts.map +1 -1
  304. package/dist/internal/Webhooks.d.ts +50 -36
  305. package/dist/internal/Webhooks.d.ts.map +1 -1
  306. package/dist/internal/Webhooks.js +92 -205
  307. package/dist/internal/Webhooks.js.map +1 -1
  308. package/package.json +37 -6
  309. package/src/ApiKey.test.ts +3 -3
  310. package/src/ApiKey.ts +11 -12
  311. package/src/ApiKeys.test.ts +278 -0
  312. package/src/ApiKeys.ts +358 -0
  313. package/src/App.test-d.ts +1 -1
  314. package/src/App.test.ts +40508 -19083
  315. package/src/App.ts +239 -416
  316. package/src/Client.test-d.ts +307 -16
  317. package/src/Handler.ts +154 -0
  318. package/src/Scope.ts +17 -4
  319. package/src/Webhooks.test.ts +8 -7
  320. package/src/Webhooks.ts +13 -7
  321. package/src/admin/Access.ts +1 -3
  322. package/src/admin/App.ts +19 -24
  323. package/src/admin/apps/api-keys.test.ts +70 -18
  324. package/src/admin/apps/api-keys.ts +92 -9
  325. package/src/admin/apps/scopes.test.ts +8 -0
  326. package/src/admin/apps/verified-tokens.test.ts +3 -30
  327. package/src/admin/apps/verified-tokens.ts +18 -37
  328. package/src/admin/ui.generated.ts +1 -1
  329. package/src/apps/composition.test.ts +66 -0
  330. package/src/apps/data/App.ts +295 -0
  331. package/src/apps/data/index.ts +2 -0
  332. package/src/apps/{activities.test.ts → data/routes/activities.test.ts} +3 -3
  333. package/src/apps/{activities.ts → data/routes/activities.ts} +15 -15
  334. package/src/apps/{addresses.ts → data/routes/addresses.ts} +6 -6
  335. package/src/apps/{balances.test.ts → data/routes/balances.test.ts} +6 -5
  336. package/src/apps/{balances.ts → data/routes/balances.ts} +46 -12
  337. package/src/apps/{blocks.test.ts → data/routes/blocks.test.ts} +4 -4
  338. package/src/apps/{blocks.ts → data/routes/blocks.ts} +14 -14
  339. package/src/apps/{coingecko.test.ts → data/routes/coingecko.test.ts} +2 -2
  340. package/src/apps/{coingecko.ts → data/routes/coingecko.ts} +14 -14
  341. package/src/apps/{exchanges.test.ts → data/routes/exchanges.test.ts} +2 -2
  342. package/src/apps/{exchanges.ts → data/routes/exchanges.ts} +20 -20
  343. package/src/apps/{fee-amm.test.ts → data/routes/fee-amm.test.ts} +3 -3
  344. package/src/apps/{fee-amm.ts → data/routes/fee-amm.ts} +18 -18
  345. package/src/apps/{indexer.test.ts → data/routes/indexer.test.ts} +27 -6
  346. package/src/apps/{indexer.ts → data/routes/indexer.ts} +13 -10
  347. package/src/apps/{receipts.test.ts → data/routes/receipts.test.ts} +4 -4
  348. package/src/apps/{receipts.ts → data/routes/receipts.ts} +13 -13
  349. package/src/apps/{rpc.test.ts → data/routes/rpc.test.ts} +142 -13
  350. package/src/apps/{rpc.ts → data/routes/rpc.ts} +7 -7
  351. package/src/apps/{tokenlist.test.ts → data/routes/tokenlist.test.ts} +8 -10
  352. package/src/apps/{tokenlist.ts → data/routes/tokenlist.ts} +9 -9
  353. package/src/apps/{tokens.test.ts → data/routes/tokens.test.ts} +6 -5
  354. package/src/apps/{tokens.ts → data/routes/tokens.ts} +20 -20
  355. package/src/apps/{transactions.test.ts → data/routes/transactions.test.ts} +4 -4
  356. package/src/apps/{transactions.ts → data/routes/transactions.ts} +15 -15
  357. package/src/apps/{transfers.test.ts → data/routes/transfers.test.ts} +3 -3
  358. package/src/apps/{transfers.ts → data/routes/transfers.ts} +15 -15
  359. package/src/apps/{verified-tokens.test.ts → data/routes/verified-tokens.test.ts} +27 -15
  360. package/src/apps/{verified-tokens.ts → data/routes/verified-tokens.ts} +10 -10
  361. package/src/apps/{webhooks.test.ts → data/routes/webhooks.test.ts} +137 -150
  362. package/src/apps/{webhooks.ts → data/routes/webhooks.ts} +83 -81
  363. package/src/apps/docs/App.ts +136 -0
  364. package/src/apps/docs/index.ts +1 -0
  365. package/src/apps/index.ts +3 -0
  366. package/src/apps/metadata.ts +23 -0
  367. package/src/apps/platform/App.ts +130 -0
  368. package/src/apps/platform/index.ts +1 -0
  369. package/src/apps/platform/routes/api-keys.test.ts +330 -0
  370. package/src/apps/platform/routes/api-keys.ts +427 -0
  371. package/src/apps/platform/routes/invitations.test.ts +361 -0
  372. package/src/apps/platform/routes/invitations.ts +519 -0
  373. package/src/apps/platform/routes/me.test.ts +121 -0
  374. package/src/apps/platform/routes/me.ts +106 -0
  375. package/src/apps/platform/routes/members.test.ts +195 -0
  376. package/src/apps/platform/routes/members.ts +313 -0
  377. package/src/apps/platform/routes/orgs.test.ts +313 -0
  378. package/src/apps/platform/routes/orgs.ts +343 -0
  379. package/src/apps/platform/routes/projects.test.ts +181 -0
  380. package/src/apps/platform/routes/projects.ts +367 -0
  381. package/src/apps/relay/App.test.ts +484 -0
  382. package/src/apps/relay/App.ts +128 -0
  383. package/src/apps/relay/Sponsorships.test.ts +375 -0
  384. package/src/apps/relay/Sponsorships.ts +305 -0
  385. package/src/apps/relay/index.ts +2 -0
  386. package/src/{Cli.test.ts → cli/Cli.test.ts} +10 -9
  387. package/src/{Cli.ts → cli/Cli.ts} +16 -9
  388. package/src/cli/bin.ts +4 -0
  389. package/src/cli/commands/admin.test.ts +71 -0
  390. package/src/cli/commands/admin.ts +60 -0
  391. package/src/cloudflare.ts +10 -0
  392. package/src/db/Db.test.ts +84 -0
  393. package/src/db/Db.ts +542 -0
  394. package/src/db/Schema.ts +301 -0
  395. package/src/db/tables/invitations.ts +198 -0
  396. package/src/db/tables/memberships.ts +208 -0
  397. package/src/db/tables/organizations.test.ts +160 -0
  398. package/src/db/tables/organizations.ts +232 -0
  399. package/src/db/tables/projects.ts +107 -0
  400. package/src/db/tables/sponsoredTransactions.test.ts +218 -0
  401. package/src/db/tables/sponsoredTransactions.ts +236 -0
  402. package/src/db/tables/users.ts +85 -0
  403. package/src/db/tables/verifiedTokens.ts +111 -0
  404. package/src/db/tables/webhookDeliveries.ts +159 -0
  405. package/src/db/tables/webhookSubscriptions.ts +358 -0
  406. package/src/handlers/internal/executionError.ts +207 -0
  407. package/src/handlers/internal/multisig.test.ts +818 -0
  408. package/src/handlers/internal/multisig.ts +823 -0
  409. package/src/handlers/internal/requestListener.ts +273 -0
  410. package/src/handlers/internal/sponsorship.ts +245 -0
  411. package/src/handlers/internal/types.ts +378 -0
  412. package/src/handlers/internal/utils.ts +153 -0
  413. package/src/handlers/relay.test.ts +2035 -0
  414. package/src/handlers/relay.ts +1623 -0
  415. package/src/index.ts +4 -2
  416. package/src/internal/Auth.test.ts +337 -21
  417. package/src/internal/Auth.ts +783 -44
  418. package/src/internal/Cursor.test.ts +3 -2
  419. package/src/internal/Log.test.ts +1 -1
  420. package/src/internal/Log.ts +11 -3
  421. package/src/internal/MetricSink.ts +1 -1
  422. package/src/internal/OpenApi.ts +0 -59
  423. package/src/internal/RateLimit.test.ts +1 -1
  424. package/src/internal/RpcSchema.ts +10 -0
  425. package/src/internal/Store.test.ts +150 -10
  426. package/src/internal/Store.ts +136 -11
  427. package/src/internal/Tidx.local.test.ts +1 -1
  428. package/src/internal/VerifiedTokens.test.ts +99 -115
  429. package/src/internal/VerifiedTokens.ts +123 -175
  430. package/src/internal/WebhookDestination.test.ts +1 -1
  431. package/src/internal/Webhooks.test.ts +111 -111
  432. package/src/internal/Webhooks.ts +103 -221
  433. package/dist/ApiKeySource.d.ts +0 -166
  434. package/dist/ApiKeySource.d.ts.map +0 -1
  435. package/dist/ApiKeySource.js +0 -234
  436. package/dist/ApiKeySource.js.map +0 -1
  437. package/dist/Cli.d.ts.map +0 -1
  438. package/dist/Cli.js +0 -13
  439. package/dist/Cli.js.map +0 -1
  440. package/dist/apps/activities.js.map +0 -1
  441. package/dist/apps/addresses.js.map +0 -1
  442. package/dist/apps/balances.d.ts.map +0 -1
  443. package/dist/apps/balances.js.map +0 -1
  444. package/dist/apps/blocks.d.ts.map +0 -1
  445. package/dist/apps/blocks.js.map +0 -1
  446. package/dist/apps/coingecko.d.ts.map +0 -1
  447. package/dist/apps/coingecko.js.map +0 -1
  448. package/dist/apps/exchanges.d.ts.map +0 -1
  449. package/dist/apps/exchanges.js.map +0 -1
  450. package/dist/apps/fee-amm.d.ts.map +0 -1
  451. package/dist/apps/fee-amm.js.map +0 -1
  452. package/dist/apps/indexer.d.ts.map +0 -1
  453. package/dist/apps/indexer.js.map +0 -1
  454. package/dist/apps/receipts.d.ts.map +0 -1
  455. package/dist/apps/receipts.js.map +0 -1
  456. package/dist/apps/rpc.d.ts.map +0 -1
  457. package/dist/apps/rpc.js.map +0 -1
  458. package/dist/apps/tokenlist.d.ts.map +0 -1
  459. package/dist/apps/tokenlist.js.map +0 -1
  460. package/dist/apps/tokens.d.ts.map +0 -1
  461. package/dist/apps/tokens.js.map +0 -1
  462. package/dist/apps/transactions.d.ts.map +0 -1
  463. package/dist/apps/transactions.js.map +0 -1
  464. package/dist/apps/transfers.d.ts.map +0 -1
  465. package/dist/apps/transfers.js.map +0 -1
  466. package/dist/apps/verified-tokens.d.ts.map +0 -1
  467. package/dist/apps/verified-tokens.js.map +0 -1
  468. package/dist/apps/webhooks.js.map +0 -1
  469. package/dist/internal/OpenApi.fonts.d.ts.map +0 -1
  470. package/dist/internal/OpenApi.fonts.js.map +0 -1
  471. package/dist/internal/OpenApi.logo.d.ts.map +0 -1
  472. package/dist/internal/OpenApi.logo.js.map +0 -1
  473. package/seeds/31318/icons/0x20c0000000000000000000000000000000000000.svg +0 -1
  474. package/seeds/31318/icons/0x20c0000000000000000000000000000000000001.svg +0 -1
  475. package/seeds/31318/icons/0x20c0000000000000000000000000000000000002.svg +0 -1
  476. package/seeds/31318/icons/0x20c0000000000000000000000000000000000003.svg +0 -1
  477. package/seeds/31318/verified-tokens.json +0 -30
  478. package/seeds/4217/icons/0x20c0000000000000000000000000000000000000.svg +0 -25
  479. package/seeds/4217/icons/0x20c000000000000000000000048c8f36df1c9a4a.svg +0 -1
  480. package/seeds/4217/icons/0x20c0000000000000000000000520792dcccccccc.svg +0 -1
  481. package/seeds/4217/icons/0x20c0000000000000000000000a6da882d075a4c3.svg +0 -4
  482. package/seeds/4217/icons/0x20c000000000000000000000111111111e910f0f.svg +0 -30
  483. package/seeds/4217/icons/0x20c00000000000000000000014f22ca97301eb73.svg +0 -1
  484. package/seeds/4217/icons/0x20c0000000000000000000001621e21f71cf12fb.svg +0 -1
  485. package/seeds/4217/icons/0x20c0000000000000000000002f52d5cc21a3207b.svg +0 -1
  486. package/seeds/4217/icons/0x20c0000000000000000000003158081efd85bfc2.svg +0 -11
  487. package/seeds/4217/icons/0x20c0000000000000000000003554d28269e0f3c2.svg +0 -1
  488. package/seeds/4217/icons/0x20c000000000000000000000383a23bacb546ab9.svg +0 -1
  489. package/seeds/4217/icons/0x20c00000000000000000000042109aef2f8b28e1.png +0 -0
  490. package/seeds/4217/icons/0x20c0000000000000000000005c0bac7cef389a11.svg +0 -1
  491. package/seeds/4217/icons/0x20c0000000000000000000006fd9a167923ba194.png +0 -0
  492. package/seeds/4217/icons/0x20c0000000000000000000007f7ba549dd0251b9.svg +0 -1
  493. package/seeds/4217/icons/0x20c0000000000000000000008191667423f70e67.svg +0 -5
  494. package/seeds/4217/icons/0x20c0000000000000000000008ee4fcff88888888.svg +0 -1
  495. package/seeds/4217/icons/0x20c0000000000000000000009a4a4b17e0dc6651.svg +0 -1
  496. package/seeds/4217/icons/0x20c000000000000000000000ab02d39df30bd17e.svg +0 -1
  497. package/seeds/4217/icons/0x20c000000000000000000000ae247a1130450f09.svg +0 -1
  498. package/seeds/4217/icons/0x20c000000000000000000000aeed2ec36a54d0e5.svg +0 -1
  499. package/seeds/4217/icons/0x20c000000000000000000000b9537d11c60e8b50.svg +0 -1
  500. package/seeds/4217/icons/0x20c000000000000000000000bd95bfb69fbe6ce3.svg +0 -1
  501. package/seeds/4217/icons/0x20c000000000000000000000c412ec89d0c08be5.svg +0 -1
  502. package/seeds/4217/icons/0x20c000000000000000000000f047dd7018e50367.png +0 -0
  503. package/seeds/4217/verified-tokens.json +0 -177
  504. package/seeds/42431/icons/0x20c0000000000000000000000000000000000000.svg +0 -25
  505. package/seeds/42431/icons/0x20c0000000000000000000000000000000000001.svg +0 -1
  506. package/seeds/42431/icons/0x20c0000000000000000000000000000000000002.svg +0 -1
  507. package/seeds/42431/icons/0x20c0000000000000000000000000000000000003.svg +0 -1
  508. package/seeds/42431/icons/0x20c0000000000000000000009e8d7eb59b783726.svg +0 -1
  509. package/seeds/42431/icons/0x20c000000000000000000000d72572838bbee59c.svg +0 -1
  510. package/seeds/42431/verified-tokens.json +0 -44
  511. package/seeds/openrpc/README.md +0 -27
  512. package/seeds/openrpc/execution-apis.json +0 -8989
  513. package/src/ApiKeySource.test-d.ts +0 -11
  514. package/src/ApiKeySource.test.ts +0 -295
  515. package/src/ApiKeySource.ts +0 -303
  516. /package/src/{internal/OpenApi.fonts.ts → apps/docs/fonts.ts} +0 -0
  517. /package/src/{internal/OpenApi.logo.ts → apps/docs/logo.ts} +0 -0
@@ -1,16 +1,17 @@
1
1
  import { Hono } from 'hono';
2
2
  import { parseAbiItem } from 'viem';
3
3
  import * as z from 'zod/mini';
4
- import * as Auth from '../internal/Auth.js';
5
- import * as Cache from '../internal/Cache.js';
6
- import * as Cursor from '../internal/Cursor.js';
7
- import * as OpenApi from '../internal/OpenApi.js';
8
- import * as Response from '../internal/Response.js';
9
- import * as Schema from '../internal/Schema.js';
10
- import * as Store from '../internal/Store.js';
11
- import * as Ttl from '../internal/Ttl.js';
12
- import * as Value from '../internal/Value.js';
13
- import * as Webhooks from '../internal/Webhooks.js';
4
+ import * as Auth from '../../../internal/Auth.js';
5
+ import * as Cache from '../../../internal/Cache.js';
6
+ import * as Cursor from '../../../internal/Cursor.js';
7
+ import * as Db from '../../../db/Db.js';
8
+ import * as OpenApi from '../../../internal/OpenApi.js';
9
+ import * as Response from '../../../internal/Response.js';
10
+ import * as Schema from '../../../internal/Schema.js';
11
+ import * as Store from '../../../internal/Store.js';
12
+ import * as Ttl from '../../../internal/Ttl.js';
13
+ import * as Value from '../../../internal/Value.js';
14
+ import * as Webhooks from '../../../internal/Webhooks.js';
14
15
  import * as Receipts from './receipts.js';
15
16
  import * as Transactions from './transactions.js';
16
17
  import * as Transfers from './transfers.js';
@@ -228,7 +229,7 @@ export var schema;
228
229
  }))),
229
230
  args: z.optional(z
230
231
  .record(z.string(), z.unknown())
231
- .check(z.describe('Match decoded event arguments by name (indexed or non-indexed). Requires `signature`. Each value is an exact value or an operator object.'), z.meta({ examples: [{ to: '0x9e39034aae71fb89f66061a2602eb6efec271754' }] }))),
232
+ .check(z.describe('Match decoded event arguments by name (indexed or non-indexed). Requires `signature`. Each value is an exact value or a super admin object.'), z.meta({ examples: [{ to: '0x9e39034aae71fb89f66061a2602eb6efec271754' }] }))),
232
233
  blockNumber: z.optional(schema.compare.check(z.describe('Only match logs within these block-number bounds.'))),
233
234
  })
234
235
  .check(z.describe('Filters that narrow which contract event logs trigger this webhook.'), z.meta({ title: 'Log filters' }), z.refine((f) => Object.keys(f).length > 0, {
@@ -740,10 +741,9 @@ export var schema;
740
741
  */
741
742
  export function webhooks(options = {}) {
742
743
  const hidden = !options.enabled;
743
- return (new Hono()
744
- .use('*', async (c, next) => {
745
- // Gate the whole resource on a configured state store. Without it the
746
- // outbound-HTTP surface is disabled (read-only deployment).
744
+ // Gate the whole resource on a configured state store. Without it the
745
+ // outbound-HTTP surface is disabled (read-only deployment).
746
+ const gate = async (c, next) => {
747
747
  if (!c.get('webhook'))
748
748
  return notEnabled(c);
749
749
  await next();
@@ -751,8 +751,13 @@ export function webhooks(options = {}) {
751
751
  if (!c.res.headers.has('Cache-Control'))
752
752
  c.res.headers.set('Cache-Control', 'no-store');
753
753
  return;
754
- })
755
- .get('/event-types', Auth.policy({ apiKey: { scopes: ['data:read'] }, mpp: true, public: true }), OpenApi.describeRoute({
754
+ };
755
+ return (new Hono()
756
+ // `/v1/webhooks/*` does not match the collection root, so it gets its
757
+ // own registration.
758
+ .use('/v1/webhooks', gate)
759
+ .use('/v1/webhooks/*', gate)
760
+ .get('/v1/webhooks/event-types', Auth.policy({ apiKey: { scopes: ['data:read'] }, mpp: true, public: true }), OpenApi.describeRoute({
756
761
  description: 'See which onchain event types Tempo can POST to your webhook URL.',
757
762
  hide: hidden,
758
763
  operationId: 'getWebhookEventTypes',
@@ -781,7 +786,7 @@ export function webhooks(options = {}) {
781
786
  data: eventTypeDescriptions.map((eventType) => ({ ...eventType })),
782
787
  }), 200);
783
788
  })
784
- .post('/', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('json', schema.createWebhook.Body, {
789
+ .post('/v1/webhooks', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('json', schema.createWebhook.Body, {
785
790
  code: 'body_invalid',
786
791
  message: 'Check the request body and try again.',
787
792
  }), OpenApi.describeRoute({
@@ -808,14 +813,14 @@ export function webhooks(options = {}) {
808
813
  message: 'Check the request body and try again.',
809
814
  });
810
815
  const webhook = c.get('webhook');
811
- const store = webhook.store;
816
+ const db = Db.get(c.get('db'));
812
817
  const owner = ownerFor(c);
813
818
  if (!owner)
814
819
  return unauthorized(c);
815
820
  const body = c.req.valid('json');
816
821
  const chainId = body.chainId ?? c.get('chainId');
817
822
  try {
818
- const subscription = await Webhooks.createSubscription(store, {
823
+ const subscription = await Webhooks.createSubscription(db, {
819
824
  chainId,
820
825
  ...(body.context === undefined ? {} : { context: body.context }),
821
826
  destination: body.destination,
@@ -830,7 +835,7 @@ export function webhooks(options = {}) {
830
835
  return mutationError(c, cause);
831
836
  }
832
837
  })
833
- .get('/', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('query', schema.listWebhooks.Query, {
838
+ .get('/v1/webhooks', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('query', schema.listWebhooks.Query, {
834
839
  code: 'query_invalid',
835
840
  message: 'Check the query parameters and try again.',
836
841
  }), OpenApi.describeRoute({
@@ -855,7 +860,7 @@ export function webhooks(options = {}) {
855
860
  code: 'query_invalid',
856
861
  message: 'Check the query parameters and try again.',
857
862
  });
858
- const store = c.get('webhook').store;
863
+ const db = Db.get(c.get('db'));
859
864
  const owner = ownerFor(c);
860
865
  if (!owner)
861
866
  return unauthorized(c);
@@ -865,11 +870,11 @@ export function webhooks(options = {}) {
865
870
  // run it concurrently with the page list. Best-effort: a failure
866
871
  // omits `meta` rather than failing the page.
867
872
  const countPromise = include.includes('totalCount')
868
- ? Webhooks.countSubscriptions(store, owner).catch(() => undefined)
873
+ ? Webhooks.countSubscriptions(db, owner).catch(() => undefined)
869
874
  : undefined;
870
875
  // Fetch one extra to detect a further page without a second round-trip.
871
876
  // `page` translates to a positional slice of `(page - 1) * limit` rows.
872
- const rows = await Webhooks.listSubscriptions(store, owner, {
877
+ const rows = await Webhooks.listSubscriptions(db, owner, {
873
878
  cursor,
874
879
  limit: limit + 1,
875
880
  offset: page !== undefined && page > 1 ? (page - 1) * limit : undefined,
@@ -894,7 +899,7 @@ export function webhooks(options = {}) {
894
899
  // match the sibling static route `GET /webhooks/event-types`. Without the
895
900
  // constraint, this API-key-only route's policy would be collected for the
896
901
  // event-types request and override its (intentionally public) access.
897
- .get('/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('param', schema.getWebhook.Params, {
902
+ .get('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('param', schema.getWebhook.Params, {
898
903
  code: 'param_invalid',
899
904
  message: 'Check the path parameters and try again.',
900
905
  }), OpenApi.describeRoute({
@@ -925,13 +930,13 @@ export function webhooks(options = {}) {
925
930
  code: 'param_invalid',
926
931
  message: 'Check the path parameters and try again.',
927
932
  });
928
- const store = c.get('webhook').store;
933
+ const db = Db.get(c.get('db'));
929
934
  const owner = ownerFor(c);
930
935
  if (!owner)
931
936
  return unauthorized(c);
932
937
  const { id } = c.req.valid('param');
933
938
  try {
934
- const subscription = await Webhooks.getSubscription(store, owner, id);
939
+ const subscription = await Webhooks.getSubscription(db, owner, id);
935
940
  if (!subscription)
936
941
  return notFound(c);
937
942
  return c.json(Response.validated(schema.getWebhook.Response, toPublic(subscription)), 200);
@@ -940,7 +945,7 @@ export function webhooks(options = {}) {
940
945
  return Response.upstream(c, cause);
941
946
  }
942
947
  })
943
- .get('/:id{wh_[A-Za-z0-9_-]+}/deliveries', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('param', schema.listWebhookDeliveries.Params, {
948
+ .get('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}/deliveries', Auth.policy({ apiKey: { scopes: ['webhooks:read'] } }), OpenApi.validate('param', schema.listWebhookDeliveries.Params, {
944
949
  code: 'param_invalid',
945
950
  message: 'Check the path parameters and try again.',
946
951
  }), OpenApi.validate('query', schema.listWebhookDeliveries.Query, {
@@ -979,7 +984,7 @@ export function webhooks(options = {}) {
979
984
  code: 'query_invalid',
980
985
  message: 'Check the query parameters and try again.',
981
986
  });
982
- const store = c.get('webhook').store;
987
+ const db = Db.get(c.get('db'));
983
988
  const owner = ownerFor(c);
984
989
  if (!owner)
985
990
  return unauthorized(c);
@@ -988,18 +993,18 @@ export function webhooks(options = {}) {
988
993
  try {
989
994
  // Owner-scope first: resolving the subscription under the caller's owner
990
995
  // key 404s ids they don't own (indistinguishable from "doesn't exist").
991
- const subscription = await Webhooks.getSubscription(store, owner, id);
996
+ const subscription = await Webhooks.getSubscription(db, owner, id);
992
997
  if (!subscription)
993
998
  return notFound(c);
994
999
  // `totalCount` is opt-in and exact (the delivery log is TTL-bounded);
995
1000
  // run it concurrently with the page list. Best-effort: a failure
996
1001
  // omits `meta` rather than failing the page.
997
1002
  const countPromise = include.includes('totalCount')
998
- ? Webhooks.countDeliveries(store, id).catch(() => undefined)
1003
+ ? Webhooks.countDeliveries(db, id).catch(() => undefined)
999
1004
  : undefined;
1000
1005
  // Fetch one extra to detect a further page without a second round-trip.
1001
1006
  // `page` translates to a positional slice of `(page - 1) * limit` rows.
1002
- const rows = await Webhooks.listDeliveries(store, id, {
1007
+ const rows = await Webhooks.listDeliveries(db, id, {
1003
1008
  cursor,
1004
1009
  limit: limit + 1,
1005
1010
  offset: page !== undefined && page > 1 ? (page - 1) * limit : undefined,
@@ -1020,7 +1025,7 @@ export function webhooks(options = {}) {
1020
1025
  return Response.upstream(c, cause);
1021
1026
  }
1022
1027
  })
1023
- .post('/:id{wh_[A-Za-z0-9_-]+}/ping', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.pingWebhook.Params, {
1028
+ .post('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}/ping', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.pingWebhook.Params, {
1024
1029
  code: 'param_invalid',
1025
1030
  message: 'Check the path parameters and try again.',
1026
1031
  }), OpenApi.describeRoute({
@@ -1051,20 +1056,20 @@ export function webhooks(options = {}) {
1051
1056
  code: 'param_invalid',
1052
1057
  message: 'Check the path parameters and try again.',
1053
1058
  });
1054
- const store = c.get('webhook').store;
1059
+ const db = Db.get(c.get('db'));
1055
1060
  const owner = ownerFor(c);
1056
1061
  if (!owner)
1057
1062
  return unauthorized(c);
1058
1063
  const { id } = c.req.valid('param');
1059
1064
  try {
1060
1065
  // Owner-scope first so unowned/unknown ids are indistinguishable (404).
1061
- const subscription = await Webhooks.getSubscription(store, owner, id);
1066
+ const subscription = await Webhooks.getSubscription(db, owner, id);
1062
1067
  if (!subscription)
1063
1068
  return notFound(c);
1064
1069
  // Inline delivery (not the queue) so the caller gets an immediate
1065
1070
  // result. `ping` never mutates the subscription's failure/lifecycle
1066
1071
  // state — a test must not disable a healthy endpoint.
1067
- const { envelope, result } = await Webhooks.ping(store, subscription);
1072
+ const { envelope, result } = await Webhooks.ping(db, subscription);
1068
1073
  return c.json(Response.validated(schema.pingWebhook.Response, {
1069
1074
  delivered: result.ok,
1070
1075
  eventId: envelope.id,
@@ -1077,7 +1082,7 @@ export function webhooks(options = {}) {
1077
1082
  return Response.upstream(c, cause);
1078
1083
  }
1079
1084
  })
1080
- .post('/:id{wh_[A-Za-z0-9_-]+}/deliveries/:deliveryId/retry', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.retryWebhookDelivery.Params, {
1085
+ .post('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}/deliveries/:deliveryId/retry', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.retryWebhookDelivery.Params, {
1081
1086
  code: 'param_invalid',
1082
1087
  message: 'Check the path parameters and try again.',
1083
1088
  }), OpenApi.describeRoute({
@@ -1108,17 +1113,17 @@ export function webhooks(options = {}) {
1108
1113
  code: 'param_invalid',
1109
1114
  message: 'Check the path parameters and try again.',
1110
1115
  });
1111
- const store = c.get('webhook').store;
1116
+ const db = Db.get(c.get('db'));
1112
1117
  const owner = ownerFor(c);
1113
1118
  if (!owner)
1114
1119
  return unauthorized(c);
1115
1120
  const { deliveryId, id } = c.req.valid('param');
1116
1121
  try {
1117
1122
  // Owner-scope the subscription first so unowned ids 404 like elsewhere.
1118
- const subscription = await Webhooks.getSubscription(store, owner, id);
1123
+ const subscription = await Webhooks.getSubscription(db, owner, id);
1119
1124
  if (!subscription)
1120
1125
  return notFound(c);
1121
- const delivery = await Webhooks.getDelivery(store, id, deliveryId);
1126
+ const delivery = await Webhooks.getDelivery(db, id, deliveryId);
1122
1127
  if (!delivery)
1123
1128
  return Response.error(c, {
1124
1129
  code: 'delivery_not_found',
@@ -1127,7 +1132,7 @@ export function webhooks(options = {}) {
1127
1132
  });
1128
1133
  // Replay the exact persisted envelope inline. Unlike `ping`, this is a
1129
1134
  // real event, so the outcome updates the subscription's failure state.
1130
- const result = await Webhooks.deliverAndRecord(store, subscription, delivery.envelope);
1135
+ const result = await Webhooks.deliverAndRecord(db, subscription, delivery.envelope);
1131
1136
  return c.json(Response.validated(schema.retryWebhookDelivery.Response, {
1132
1137
  delivered: result.ok,
1133
1138
  eventId: delivery.envelope.id,
@@ -1140,7 +1145,7 @@ export function webhooks(options = {}) {
1140
1145
  return Response.upstream(c, cause);
1141
1146
  }
1142
1147
  })
1143
- .patch('/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.updateWebhook.Params, {
1148
+ .patch('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.updateWebhook.Params, {
1144
1149
  code: 'param_invalid',
1145
1150
  message: 'Check the path parameters and try again.',
1146
1151
  }), OpenApi.validate('json', schema.updateWebhook.Body, {
@@ -1179,7 +1184,7 @@ export function webhooks(options = {}) {
1179
1184
  code: 'body_invalid',
1180
1185
  message: 'Check the request body and try again.',
1181
1186
  });
1182
- const store = c.get('webhook').store;
1187
+ const db = Db.get(c.get('db'));
1183
1188
  const owner = ownerFor(c);
1184
1189
  if (!owner)
1185
1190
  return unauthorized(c);
@@ -1192,12 +1197,12 @@ export function webhooks(options = {}) {
1192
1197
  // persisting — otherwise a bad filter would silently widen the match
1193
1198
  // set at scan time.
1194
1199
  if (patch.filters !== undefined) {
1195
- const existing = await Webhooks.getSubscription(store, owner, id);
1200
+ const existing = await Webhooks.getSubscription(db, owner, id);
1196
1201
  if (!existing)
1197
1202
  return notFound(c);
1198
1203
  parseFilters(existing.eventType, patch.filters);
1199
1204
  }
1200
- const subscription = await Webhooks.updateSubscription(store, owner, id, patch);
1205
+ const subscription = await Webhooks.updateSubscription(db, owner, id, patch);
1201
1206
  if (!subscription)
1202
1207
  return notFound(c);
1203
1208
  return c.json(Response.validated(schema.updateWebhook.Response, toPublic(subscription)), 200);
@@ -1206,7 +1211,7 @@ export function webhooks(options = {}) {
1206
1211
  return mutationError(c, cause);
1207
1212
  }
1208
1213
  })
1209
- .delete('/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.deleteWebhook.Params, {
1214
+ .delete('/v1/webhooks/:id{wh_[A-Za-z0-9_-]+}', Auth.policy({ apiKey: { scopes: ['webhooks:write'] } }), OpenApi.validate('param', schema.deleteWebhook.Params, {
1210
1215
  code: 'param_invalid',
1211
1216
  message: 'Check the path parameters and try again.',
1212
1217
  }), OpenApi.describeRoute({
@@ -1237,13 +1242,13 @@ export function webhooks(options = {}) {
1237
1242
  code: 'param_invalid',
1238
1243
  message: 'Check the path parameters and try again.',
1239
1244
  });
1240
- const store = c.get('webhook').store;
1245
+ const db = Db.get(c.get('db'));
1241
1246
  const owner = ownerFor(c);
1242
1247
  if (!owner)
1243
1248
  return unauthorized(c);
1244
1249
  const { id } = c.req.valid('param');
1245
1250
  try {
1246
- const deleted = await Webhooks.deleteSubscription(store, owner, id);
1251
+ const deleted = await Webhooks.deleteSubscription(db, owner, id);
1247
1252
  if (!deleted)
1248
1253
  return notFound(c);
1249
1254
  return c.json(Response.validated(schema.deleteWebhook.Response, { id }), 200);
@@ -1281,13 +1286,13 @@ const endOfBlockIndex = 2_147_483_647;
1281
1286
  * pauses that subscription at the last good position and the next tick resumes.
1282
1287
  */
1283
1288
  export async function poll(options) {
1284
- const { batchSize = 100, chainId, client, confirmations = 2, eventTypes = ['token:transfer', 'transaction:included', 'log:emitted', 'block:created'], maxBlocks = 1_000, store, tidx, } = options;
1289
+ const { batchSize = 100, cache: cache_metadata = Store.memory(), chainId, client, confirmations = 2, db, eventTypes = ['token:transfer', 'transaction:included', 'log:emitted', 'block:created'], maxBlocks = 1_000, tidx, } = options;
1285
1290
  const now = options.now ?? (() => new Date());
1286
1291
  // Default (self-host) transport: deliver inline and record the outcome so a
1287
1292
  // sustained-failure subscription auto-disables. On Cloudflare, callers pass a
1288
1293
  // Queue producer instead and the consumer runs `deliverAndRecord`.
1289
1294
  const dispatch = options.dispatch ??
1290
- (({ envelope, subscription }) => Webhooks.deliverAndRecord(store, subscription, envelope));
1295
+ (({ envelope, subscription }) => Webhooks.deliverAndRecord(db, subscription, envelope));
1291
1296
  // Head resolution is lazy and per-source. RPC types work back from the live
1292
1297
  // RPC head; the legacy TIDX types from the indexed head (never ahead of the
1293
1298
  // indexer). A pinned `headBlockNumber` (tests) overrides both.
@@ -1297,6 +1302,9 @@ export async function poll(options) {
1297
1302
  let tidxHead = override === undefined ? undefined : Number(override);
1298
1303
  const resolveTidxHead = async () => (tidxHead ??= tidx ? await getIndexedHead(tidx, chainId) : await resolveRpcHead());
1299
1304
  const rpcSafeBlock = Math.max(0, (await resolveRpcHead()) - confirmations);
1305
+ // Reclaim expired rows (MPP-owned subscriptions, aged delivery logs) once
1306
+ // per tick; reads filter expiry at query time, so this is hygiene only.
1307
+ await Webhooks.pruneExpired(db, { now }).catch(() => { });
1300
1308
  // Per-tick lazy cache so multiple subscriptions of the same/related types
1301
1309
  // share fetched blocks and receipts instead of refetching the same window.
1302
1310
  const cache = createChainCache(client);
@@ -1311,15 +1319,15 @@ export async function poll(options) {
1311
1319
  for (const eventType of eventTypes) {
1312
1320
  const legacy = eventType === 'token:transfer';
1313
1321
  const safeBlock = legacy ? Math.max(0, (await resolveTidxHead()) - confirmations) : rpcSafeBlock;
1314
- const subscriptions = await Webhooks.listActive(store, chainId, eventType);
1322
+ const subscriptions = await Webhooks.listActive(db, chainId, eventType);
1315
1323
  for (const subscription of subscriptions) {
1316
1324
  result.subscriptions++;
1317
- const cursor = await Webhooks.getCursor(store, subscription.id);
1325
+ const cursor = await Webhooks.getCursor(db, subscription.id);
1318
1326
  if (cursor === null) {
1319
1327
  // First time we've seen this subscription: anchor it at the head of the
1320
1328
  // confirmed window so we never backfill from genesis. Events start
1321
1329
  // flowing from the next tick onward.
1322
- await Webhooks.setCursor(store, subscription.id, Cursor.encode([safeBlock, endOfBlockIndex]));
1330
+ await Webhooks.setCursor(db, subscription.id, Cursor.encode([safeBlock, endOfBlockIndex]));
1323
1331
  continue;
1324
1332
  }
1325
1333
  const page = await scanSubscription({
@@ -1340,7 +1348,7 @@ export async function poll(options) {
1340
1348
  // downstream destinations (Slack human amounts, richer `url`/`betterstack`
1341
1349
  // payloads) can render `amount` in token units. Non-fatal on failure.
1342
1350
  const data = eventType === 'token:transfer'
1343
- ? await withTokenMetadata(item.data, { chainId, client, store })
1351
+ ? await withTokenMetadata(item.data, { cache: cache_metadata, chainId, client })
1344
1352
  : item.data;
1345
1353
  const envelope = Webhooks.buildEnvelope({
1346
1354
  blockNumber: item.cursor[0],
@@ -1365,14 +1373,14 @@ export async function poll(options) {
1365
1373
  // a complete empty page — to the end of the confirmed window.
1366
1374
  if (failed) {
1367
1375
  if (accepted)
1368
- await Webhooks.setCursor(store, subscription.id, Cursor.encode([...accepted]));
1376
+ await Webhooks.setCursor(db, subscription.id, Cursor.encode([...accepted]));
1369
1377
  }
1370
1378
  else if (page.scannedThrough !== undefined)
1371
- await Webhooks.setCursor(store, subscription.id, Cursor.encode([page.scannedThrough, endOfBlockIndex]));
1379
+ await Webhooks.setCursor(db, subscription.id, Cursor.encode([page.scannedThrough, endOfBlockIndex]));
1372
1380
  else if (accepted)
1373
- await Webhooks.setCursor(store, subscription.id, Cursor.encode([...accepted]));
1381
+ await Webhooks.setCursor(db, subscription.id, Cursor.encode([...accepted]));
1374
1382
  else if (!page.hasMore)
1375
- await Webhooks.setCursor(store, subscription.id, Cursor.encode([safeBlock, endOfBlockIndex]));
1383
+ await Webhooks.setCursor(db, subscription.id, Cursor.encode([safeBlock, endOfBlockIndex]));
1376
1384
  }
1377
1385
  }
1378
1386
  return result;
@@ -1405,7 +1413,7 @@ async function resolveTokenMetadata(address, deps) {
1405
1413
  return { decimals: meta.decimals, symbol: meta.symbol };
1406
1414
  }, {
1407
1415
  key: `webhook:token-meta:v1:${deps.chainId}:${address}`,
1408
- store: deps.store,
1416
+ store: deps.cache,
1409
1417
  ttl: Ttl.minutes(5),
1410
1418
  });
1411
1419
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../../src/apps/data/routes/webhooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { Hono } from 'hono';
2
+ import { Handler as vocs_Handler } from 'vocs/server';
3
+ import type * as App from '../../App.js';
4
+ /**
5
+ * The docs route group: the Vocs API reference served at the app root.
6
+ *
7
+ * ```ts
8
+ * import { docs } from 'tapimo/docs'
9
+ * App.create(options).route('/', data()).route('/', platform()).route('/', docs())
10
+ * ```
11
+ *
12
+ * The group registers no routes itself: it carries a reference factory (via
13
+ * {@link Metadata}) that `App.create` mounts on finalize, after every group and
14
+ * the OpenAPI/OpenRPC documents — so the reference always renders the full
15
+ * composed surface and its catch-all stays behind API routes, wherever the
16
+ * group sits in the composition chain.
17
+ *
18
+ * Lives in the `tapimo/docs` subpath (never re-exported from `tapimo/apps`) so
19
+ * the Vocs renderer and its multi-MB icon/font data are bundled only by
20
+ * deployments that actually serve docs.
21
+ */
22
+ export declare function docs(options?: docs.Options): Hono<App.Environment, import("hono/types").BlankSchema, "/">;
23
+ export declare namespace docs {
24
+ /** Vocs API reference options (theme, top navigation, logo, socials, …). */
25
+ type Options = NonNullable<Parameters<typeof vocs_Handler.openApi>[0]['vocs']>;
26
+ }
27
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/apps/docs/App.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAA;AAErD,OAAO,KAAK,KAAK,GAAG,MAAM,cAAc,CAAA;AAMxC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,OAAO,GAAE,IAAI,CAAC,OAAY,gEAc9C;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,4EAA4E;IAC5E,KAAK,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;CAC/E"}