tapimo 0.4.4 → 0.5.1

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 (229) hide show
  1. package/dist/App.d.ts +4701 -3416
  2. package/dist/App.d.ts.map +1 -1
  3. package/dist/App.js +24 -2
  4. package/dist/App.js.map +1 -1
  5. package/dist/Assets.js +3 -3
  6. package/dist/Assets.js.map +1 -1
  7. package/dist/Scope.d.ts +18 -1
  8. package/dist/Scope.d.ts.map +1 -1
  9. package/dist/Scope.js +23 -3
  10. package/dist/Scope.js.map +1 -1
  11. package/dist/Webhooks.d.ts +1 -1
  12. package/dist/Webhooks.d.ts.map +1 -1
  13. package/dist/Webhooks.js +5 -10
  14. package/dist/Webhooks.js.map +1 -1
  15. package/dist/admin/App.d.ts +6 -34
  16. package/dist/admin/App.d.ts.map +1 -1
  17. package/dist/admin/apps/api-keys.d.ts +3 -3
  18. package/dist/admin/apps/api-keys.d.ts.map +1 -1
  19. package/dist/admin/apps/api-keys.js +4 -1
  20. package/dist/admin/apps/api-keys.js.map +1 -1
  21. package/dist/admin/apps/scopes.d.ts +6 -34
  22. package/dist/admin/apps/scopes.d.ts.map +1 -1
  23. package/dist/admin/apps/scopes.js +2 -2
  24. package/dist/admin/apps/scopes.js.map +1 -1
  25. package/dist/admin/apps/verified-tokens.d.ts +57 -57
  26. package/dist/admin/ui.generated.d.ts +1 -1
  27. package/dist/admin/ui.generated.js +33 -33
  28. package/dist/admin/ui.generated.js.map +1 -1
  29. package/dist/apps/data/App.d.ts +4574 -4277
  30. package/dist/apps/data/App.d.ts.map +1 -1
  31. package/dist/apps/data/App.js +155 -77
  32. package/dist/apps/data/App.js.map +1 -1
  33. package/dist/apps/data/FundingQuoteProviders.d.ts +109 -0
  34. package/dist/apps/data/FundingQuoteProviders.d.ts.map +1 -0
  35. package/dist/apps/data/FundingQuoteProviders.js +464 -0
  36. package/dist/apps/data/FundingQuoteProviders.js.map +1 -0
  37. package/dist/apps/data/index.d.ts +1 -1
  38. package/dist/apps/data/index.js +1 -1
  39. package/dist/apps/data/routes/activities.d.ts +26 -26
  40. package/dist/apps/data/routes/addresses.d.ts +38 -38
  41. package/dist/apps/data/routes/balances.d.ts +45 -45
  42. package/dist/apps/data/routes/balances.d.ts.map +1 -1
  43. package/dist/apps/data/routes/balances.js +67 -149
  44. package/dist/apps/data/routes/balances.js.map +1 -1
  45. package/dist/apps/data/routes/blocks.d.ts +2 -3
  46. package/dist/apps/data/routes/blocks.d.ts.map +1 -1
  47. package/dist/apps/data/routes/blocks.js +3 -5
  48. package/dist/apps/data/routes/blocks.js.map +1 -1
  49. package/dist/apps/data/routes/coingecko.d.ts +177 -176
  50. package/dist/apps/data/routes/coingecko.d.ts.map +1 -1
  51. package/dist/apps/data/routes/coingecko.js +3 -8
  52. package/dist/apps/data/routes/coingecko.js.map +1 -1
  53. package/dist/apps/data/routes/funding.d.ts +131 -228
  54. package/dist/apps/data/routes/funding.d.ts.map +1 -1
  55. package/dist/apps/data/routes/funding.js +152 -219
  56. package/dist/apps/data/routes/funding.js.map +1 -1
  57. package/dist/apps/data/routes/indexer.d.ts +34 -34
  58. package/dist/apps/data/routes/indexer.d.ts.map +1 -1
  59. package/dist/apps/data/routes/indexer.js +9 -2
  60. package/dist/apps/data/routes/indexer.js.map +1 -1
  61. package/dist/apps/data/routes/receipts.d.ts +228 -228
  62. package/dist/apps/data/routes/rpc.d.ts.map +1 -1
  63. package/dist/apps/data/routes/rpc.js +86 -16
  64. package/dist/apps/data/routes/rpc.js.map +1 -1
  65. package/dist/apps/data/routes/tokenlist.d.ts +12 -12
  66. package/dist/apps/data/routes/verified-tokens.d.ts +5 -5
  67. package/dist/apps/data/routes/webhooks.d.ts +340 -0
  68. package/dist/apps/data/routes/webhooks.d.ts.map +1 -1
  69. package/dist/apps/data/routes/webhooks.js +13 -1
  70. package/dist/apps/data/routes/webhooks.js.map +1 -1
  71. package/dist/apps/index.d.ts +1 -1
  72. package/dist/apps/index.js +1 -1
  73. package/dist/apps/management/App.d.ts +1833 -851
  74. package/dist/apps/management/App.d.ts.map +1 -1
  75. package/dist/apps/management/App.js +4 -0
  76. package/dist/apps/management/App.js.map +1 -1
  77. package/dist/apps/management/routes/api-keys.d.ts +41 -41
  78. package/dist/apps/management/routes/api-keys.js +2 -2
  79. package/dist/apps/management/routes/api-keys.js.map +1 -1
  80. package/dist/apps/management/routes/billing.d.ts +48 -48
  81. package/dist/apps/management/routes/invitations.d.ts +132 -132
  82. package/dist/apps/management/routes/invite-links.d.ts +1100 -0
  83. package/dist/apps/management/routes/invite-links.d.ts.map +1 -0
  84. package/dist/apps/management/routes/invite-links.js +411 -0
  85. package/dist/apps/management/routes/invite-links.js.map +1 -0
  86. package/dist/apps/management/routes/members.d.ts +41 -41
  87. package/dist/apps/management/routes/orgs.d.ts +92 -92
  88. package/dist/apps/management/routes/projects.d.ts +9 -9
  89. package/dist/apps/management/routes/scopes.d.ts.map +1 -1
  90. package/dist/apps/management/routes/scopes.js +2 -2
  91. package/dist/apps/management/routes/scopes.js.map +1 -1
  92. package/dist/apps/management/routes/usage.d.ts +24 -24
  93. package/dist/apps/mcp.js +2 -2
  94. package/dist/apps/mcp.js.map +1 -1
  95. package/dist/apps/relay/App.d.ts +2 -2
  96. package/dist/apps/relay/App.d.ts.map +1 -1
  97. package/dist/apps/relay/App.js +44 -6
  98. package/dist/apps/relay/App.js.map +1 -1
  99. package/dist/db/Db.d.ts +3 -0
  100. package/dist/db/Db.d.ts.map +1 -1
  101. package/dist/db/Db.js +57 -0
  102. package/dist/db/Db.js.map +1 -1
  103. package/dist/db/Schema.d.ts +31 -0
  104. package/dist/db/Schema.d.ts.map +1 -1
  105. package/dist/db/Schema.js +31 -0
  106. package/dist/db/Schema.js.map +1 -1
  107. package/dist/db/tables/inviteLinks.d.ts +42 -0
  108. package/dist/db/tables/inviteLinks.d.ts.map +1 -0
  109. package/dist/db/tables/inviteLinks.js +148 -0
  110. package/dist/db/tables/inviteLinks.js.map +1 -0
  111. package/dist/db/tables/organizations.d.ts.map +1 -1
  112. package/dist/db/tables/organizations.js +2 -0
  113. package/dist/db/tables/organizations.js.map +1 -1
  114. package/dist/db/tables/sponsoredTransactions.d.ts.map +1 -1
  115. package/dist/db/tables/sponsoredTransactions.js +6 -2
  116. package/dist/db/tables/sponsoredTransactions.js.map +1 -1
  117. package/dist/handlers/relay.d.ts.map +1 -1
  118. package/dist/handlers/relay.js +13 -3
  119. package/dist/handlers/relay.js.map +1 -1
  120. package/dist/internal/Auth.d.ts +9 -1
  121. package/dist/internal/Auth.d.ts.map +1 -1
  122. package/dist/internal/Auth.js +138 -10
  123. package/dist/internal/Auth.js.map +1 -1
  124. package/dist/internal/EdgeCache.d.ts +3 -1
  125. package/dist/internal/EdgeCache.d.ts.map +1 -1
  126. package/dist/internal/EdgeCache.js +17 -2
  127. package/dist/internal/EdgeCache.js.map +1 -1
  128. package/dist/internal/{FundingRoutes.d.ts → FundingQuotes.d.ts} +240 -369
  129. package/dist/internal/FundingQuotes.d.ts.map +1 -0
  130. package/dist/internal/{FundingRoutes.js → FundingQuotes.js} +144 -183
  131. package/dist/internal/FundingQuotes.js.map +1 -0
  132. package/dist/internal/Log.d.ts +18 -12
  133. package/dist/internal/Log.d.ts.map +1 -1
  134. package/dist/internal/Log.js +2 -0
  135. package/dist/internal/Log.js.map +1 -1
  136. package/dist/internal/Tidx.d.ts +9 -3
  137. package/dist/internal/Tidx.d.ts.map +1 -1
  138. package/dist/internal/Tidx.js +13 -7
  139. package/dist/internal/Tidx.js.map +1 -1
  140. package/dist/internal/Viem.d.ts +17 -2
  141. package/dist/internal/Viem.d.ts.map +1 -1
  142. package/dist/internal/Viem.js +30 -3
  143. package/dist/internal/Viem.js.map +1 -1
  144. package/dist/internal/index.d.ts +1 -1
  145. package/dist/internal/index.js +1 -1
  146. package/package.json +2 -2
  147. package/src/ApiKeys.test.ts +25 -0
  148. package/src/App.test-d.ts +2 -0
  149. package/src/App.test.ts +13 -2
  150. package/src/App.ts +37 -5
  151. package/src/Assets.ts +3 -3
  152. package/src/Client.test-d.ts +21 -11
  153. package/src/Scope.test.ts +1 -0
  154. package/src/Scope.ts +32 -4
  155. package/src/Webhooks.ts +5 -10
  156. package/src/admin/apps/api-keys.test.ts +27 -0
  157. package/src/admin/apps/api-keys.ts +8 -1
  158. package/src/admin/apps/scopes.test.ts +7 -2
  159. package/src/admin/apps/scopes.ts +2 -2
  160. package/src/admin/ui/src/components/Dialog.tsx +8 -2
  161. package/src/admin/ui/src/lib/scopes.test.ts +19 -0
  162. package/src/admin/ui/src/lib/scopes.ts +12 -0
  163. package/src/admin/ui/src/routes/api-keys.tsx +128 -27
  164. package/src/admin/ui.generated.ts +33 -33
  165. package/src/apps/composition.test.ts +77 -0
  166. package/src/apps/data/App.test.ts +354 -0
  167. package/src/apps/data/App.ts +178 -91
  168. package/src/apps/data/FundingQuoteProviders.test.ts +577 -0
  169. package/src/apps/data/FundingQuoteProviders.ts +633 -0
  170. package/src/apps/data/index.ts +1 -1
  171. package/src/apps/data/routes/balances.test.ts +64 -18
  172. package/src/apps/data/routes/balances.ts +76 -177
  173. package/src/apps/data/routes/blocks.ts +3 -5
  174. package/src/apps/data/routes/coingecko.ts +3 -8
  175. package/src/apps/data/routes/funding.test.ts +304 -192
  176. package/src/apps/data/routes/funding.ts +166 -286
  177. package/src/apps/data/routes/indexer.test.ts +173 -15
  178. package/src/apps/data/routes/indexer.ts +8 -2
  179. package/src/apps/data/routes/rpc.test.ts +219 -0
  180. package/src/apps/data/routes/rpc.ts +92 -17
  181. package/src/apps/data/routes/webhooks.test.ts +21 -0
  182. package/src/apps/data/routes/webhooks.ts +13 -1
  183. package/src/apps/index.ts +1 -1
  184. package/src/apps/management/App.ts +4 -0
  185. package/src/apps/management/Billing.test.ts +2 -2
  186. package/src/apps/management/routes/api-keys.test.ts +47 -3
  187. package/src/apps/management/routes/api-keys.ts +2 -2
  188. package/src/apps/management/routes/invite-links.test.ts +385 -0
  189. package/src/apps/management/routes/invite-links.ts +570 -0
  190. package/src/apps/management/routes/scopes.test.ts +3 -2
  191. package/src/apps/management/routes/scopes.ts +4 -2
  192. package/src/apps/mcp.test.ts +18 -0
  193. package/src/apps/mcp.ts +2 -2
  194. package/src/apps/relay/App.test.ts +328 -7
  195. package/src/apps/relay/App.ts +42 -6
  196. package/src/apps/relay/Sponsorships.test.ts +2 -2
  197. package/src/db/Db.test.ts +5 -5
  198. package/src/db/Db.ts +65 -0
  199. package/src/db/Schema.ts +39 -0
  200. package/src/db/tables/billingSettings.test.ts +2 -2
  201. package/src/db/tables/inviteLinks.ts +187 -0
  202. package/src/db/tables/organizations.test.ts +2 -2
  203. package/src/db/tables/organizations.ts +2 -0
  204. package/src/db/tables/sponsoredTransactions.test.ts +19 -2
  205. package/src/db/tables/sponsoredTransactions.ts +21 -14
  206. package/src/db/tables/stripeCustomers.test.ts +2 -2
  207. package/src/handlers/relay.ts +16 -4
  208. package/src/internal/Auth.test.ts +132 -22
  209. package/src/internal/Auth.ts +181 -14
  210. package/src/internal/EdgeCache.test.ts +24 -3
  211. package/src/internal/EdgeCache.ts +18 -2
  212. package/src/internal/FundingQuotes.test.ts +268 -0
  213. package/src/internal/{FundingRoutes.ts → FundingQuotes.ts} +216 -277
  214. package/src/internal/Log.ts +21 -14
  215. package/src/internal/Tidx.test.ts +48 -0
  216. package/src/internal/Tidx.ts +21 -7
  217. package/src/internal/Viem.test.ts +46 -0
  218. package/src/internal/Viem.ts +48 -6
  219. package/src/internal/index.test.ts +1 -1
  220. package/src/internal/index.ts +1 -1
  221. package/dist/apps/data/FundingRouteProviders.d.ts +0 -36
  222. package/dist/apps/data/FundingRouteProviders.d.ts.map +0 -1
  223. package/dist/apps/data/FundingRouteProviders.js +0 -245
  224. package/dist/apps/data/FundingRouteProviders.js.map +0 -1
  225. package/dist/internal/FundingRoutes.d.ts.map +0 -1
  226. package/dist/internal/FundingRoutes.js.map +0 -1
  227. package/src/apps/data/FundingRouteProviders.test.ts +0 -225
  228. package/src/apps/data/FundingRouteProviders.ts +0 -312
  229. package/src/internal/FundingRoutes.test.ts +0 -213
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FundingQuotes.d.ts","sourceRoot":"","sources":["../../src/internal/FundingQuotes.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ const destinationChain = {
7
7
  };
8
8
  /** Tempo token used when the caller omits `destinationToken`. */
9
9
  const defaultDestinationToken = 'usdce';
10
- /** Source chains accepted by the funding route inventory. */
10
+ /** Source chains considered by funding quote providers. */
11
11
  const sourceChains = [
12
12
  {
13
13
  addressFormat: 'evm',
@@ -16,9 +16,7 @@ const sourceChains = [
16
16
  kind: 'evm',
17
17
  name: 'Ethereum',
18
18
  providerIds: {
19
- bridge: 'ethereum',
20
- bungee: '1',
21
- lifi: '1',
19
+ across: '1',
22
20
  relay: '1',
23
21
  },
24
22
  slug: 'ethereum',
@@ -72,10 +70,9 @@ const sourceChains = [
72
70
  kind: 'evm',
73
71
  name: 'Base',
74
72
  providerIds: {
75
- bridge: 'base',
76
- bungee: '8453',
77
- lifi: '8453',
73
+ across: '8453',
78
74
  relay: '8453',
75
+ rhino: 'BASE',
79
76
  },
80
77
  slug: 'base',
81
78
  tokens: [
@@ -112,8 +109,7 @@ const sourceChains = [
112
109
  kind: 'evm',
113
110
  name: 'BNB Smart Chain',
114
111
  providerIds: {
115
- bungee: '56',
116
- lifi: '56',
112
+ across: '56',
117
113
  relay: '56',
118
114
  },
119
115
  slug: 'bnb',
@@ -137,14 +133,13 @@ const sourceChains = [
137
133
  ],
138
134
  },
139
135
  {
140
- addressFormat: 'solana',
141
- aliases: ['solana', 'solana:mainnet'],
142
- id: 'solana:mainnet',
136
+ addressFormat: 'base58',
137
+ aliases: ['solana', 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp'],
138
+ id: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
143
139
  kind: 'solana',
144
140
  name: 'Solana',
145
141
  providerIds: {
146
- bridge: 'solana',
147
- relay: 'solana',
142
+ rhino: 'SOLANA',
148
143
  },
149
144
  slug: 'solana',
150
145
  tokens: [
@@ -156,25 +151,16 @@ const sourceChains = [
156
151
  standard: 'SPL',
157
152
  symbol: 'USDC',
158
153
  },
159
- {
160
- address: 'Es9vMFrzaCERmJfrF4H2FYD4KCo3LwC1uix9YEaQ8t1v',
161
- coingeckoId: 'tether',
162
- decimals: 6,
163
- name: 'Tether USD',
164
- standard: 'SPL',
165
- symbol: 'USDT',
166
- },
167
154
  ],
168
155
  },
169
156
  {
170
- addressFormat: 'tron',
171
- aliases: ['tron', 'tron:mainnet'],
172
- id: 'tron:mainnet',
157
+ addressFormat: 'base58check',
158
+ aliases: ['tron', 'tron:0x2b6653dc'],
159
+ id: 'tron:0x2b6653dc',
173
160
  kind: 'tron',
174
161
  name: 'Tron',
175
162
  providerIds: {
176
- bridge: 'tron',
177
- relay: 'tron',
163
+ rhino: 'TRON',
178
164
  },
179
165
  slug: 'tron',
180
166
  tokens: [
@@ -189,7 +175,7 @@ const sourceChains = [
189
175
  ],
190
176
  },
191
177
  ];
192
- /** Tempo destination tokens supported by the initial funding route inventory. */
178
+ /** Tempo destination tokens supported by funding quote providers. */
193
179
  const destinationTokens = [
194
180
  {
195
181
  address: '0x20c0000000000000000000000000000000000000',
@@ -232,93 +218,71 @@ const destinationTokens = [
232
218
  symbol: 'frxUSD',
233
219
  },
234
220
  ];
235
- /** Providers exposed by the generic provider catalog. */
221
+ /** Providers supported by live funding quotes. */
236
222
  const providers = [
237
223
  {
238
- capabilities: ['fundingRoutes'],
224
+ id: 'across',
225
+ kind: 'intentBridge',
226
+ name: 'Across',
227
+ requiresApiKey: true,
228
+ status: 'unconfigured',
229
+ },
230
+ {
239
231
  id: 'relay',
240
232
  kind: 'solverNetwork',
241
233
  name: 'Relay',
242
234
  requiresApiKey: false,
243
- status: 'inventoryOnly',
235
+ status: 'unconfigured',
244
236
  },
245
237
  {
246
- capabilities: ['fundingRoutes'],
247
- id: 'bridge',
248
- kind: 'enterpriseTransfer',
249
- name: 'Bridge.xyz',
250
- requiresApiKey: true,
251
- status: 'inventoryOnly',
252
- },
253
- {
254
- capabilities: ['fundingRoutes'],
255
- id: 'bungee',
256
- kind: 'aggregator',
257
- name: 'Bungee',
238
+ id: 'rhino',
239
+ kind: 'bridge',
240
+ name: 'Rhino',
258
241
  requiresApiKey: false,
259
- status: 'inventoryOnly',
260
- },
261
- {
262
- capabilities: ['fundingRoutes'],
263
- id: 'lifi',
264
- kind: 'aggregator',
265
- name: 'LI.FI',
266
- requiresApiKey: true,
267
- status: 'planned',
242
+ status: 'unconfigured',
268
243
  },
269
244
  ];
270
- /** Static provider support rows used until live quote adapters are configured. */
245
+ /** Curated provider support rows used to select live quote probes. */
271
246
  const inventory = [
247
+ { destinationToken: 'usdce', provider: 'across', sourceChains: ['ethereum', 'base', 'bnb'], sourceTokens: ['USDC'] }, // prettier-ignore
272
248
  { destinationToken: 'usdce', provider: 'relay', sourceChains: ['ethereum', 'base', 'bnb'], sourceTokens: ['USDC', 'USDT'] }, // prettier-ignore
273
- { destinationToken: 'usdce', provider: 'bridge', sourceChains: ['ethereum', 'base', 'solana'], sourceTokens: ['USDC'] }, // prettier-ignore
274
- { destinationToken: 'usdce', provider: 'bridge', sourceChains: ['ethereum', 'solana', 'tron'], sourceTokens: ['USDT'] }, // prettier-ignore
275
- { destinationToken: 'usdce', provider: 'bungee', sourceChains: ['ethereum', 'base', 'bnb'], sourceTokens: ['USDC'] }, // prettier-ignore
249
+ { destinationToken: 'usdce', provider: 'rhino', sourceChains: ['base', 'solana'], sourceTokens: ['USDC'] }, // prettier-ignore
250
+ { destinationToken: 'usdt0', provider: 'rhino', sourceChains: ['tron'], sourceTokens: ['USDT'] }, // prettier-ignore
276
251
  ];
277
- const defaultAdapterTimeoutMs = 750;
278
- const includes = ['quotes'];
279
- /** Lists normalized chains and source tokens that can fund Tempo. */
252
+ const defaultAdapterTimeoutMs = 2_000;
253
+ /** Lists normalized chains and source tokens supported by quote providers. */
280
254
  export function listChains() {
281
- return sourceChains.map((chain) => ({
282
- ...formatChain(chain),
283
- tokens: chain.tokens.map((token) => formatSourceToken(chain, token)),
284
- }));
255
+ return sourceChains.flatMap((chain) => {
256
+ const symbols = new Set(inventory
257
+ .filter((entry) => entry.sourceChains.includes(chain.slug))
258
+ .flatMap((entry) => entry.sourceTokens));
259
+ if (symbols.size === 0)
260
+ return [];
261
+ return [
262
+ {
263
+ ...formatChain(chain),
264
+ tokens: chain.tokens
265
+ .filter((token) => symbols.has(token.symbol))
266
+ .map((token) => formatSourceToken(chain, token)),
267
+ },
268
+ ];
269
+ });
285
270
  }
286
- /** Lists providers, optionally filtered by one provider capability. */
271
+ /** Lists funding quote providers and their deployment status. */
287
272
  export function listProviders(options = {}) {
288
- return providers
289
- .filter((provider) => options.capability === undefined ? true : provider.capabilities.includes(options.capability))
290
- .map((provider) => ({
273
+ return providers.map((provider) => ({
291
274
  ...formatProvider(provider),
292
275
  status: options.adapters?.[provider.id] ? 'configured' : provider.status,
293
276
  }));
294
277
  }
295
- /** Parses the comma-separated `include` query parameter. */
296
- export function parseInclude(input) {
297
- if (input === undefined || input.trim() === '')
298
- return [];
299
- const parsed = input
300
- .split(',')
301
- .map((part) => part.trim())
302
- .filter(Boolean);
303
- for (const include of parsed)
304
- if (!includes.includes(include))
305
- throw new UnsupportedIncludeError();
306
- return [...new Set(parsed)];
307
- }
308
- /** Lists funding route candidates, enriching static inventory when adapters are configured. */
309
- export async function listRoutes(options) {
310
- const routes = listStaticRoutes(options);
311
- const adapterEntries = Object.entries(options.adapters ?? {});
312
- if (adapterEntries.length === 0)
313
- return routes;
314
- return Promise.all(routes.map((route) => enrichRoute(route, {
278
+ /** Returns successful live funding quotes from configured providers. */
279
+ export async function listQuotes(options) {
280
+ const candidates = listQuoteCandidates(options);
281
+ const results = await Promise.allSettled(candidates.map((candidate) => quoteCandidate(candidate, {
315
282
  adapters: options.adapters ?? {},
316
283
  cache: options.cache ?? { bypass: false },
317
- include: options.include ?? [],
318
284
  request: {
319
285
  destinationToken: options.destinationToken,
320
- include: options.include ?? [],
321
- limit: options.limit,
322
286
  provider: options.provider,
323
287
  sourceAmount: options.sourceAmount,
324
288
  sourceAmountUnits: options.sourceAmountUnits,
@@ -327,9 +291,16 @@ export async function listRoutes(options) {
327
291
  },
328
292
  timeoutMs: options.adapterTimeoutMs ?? defaultAdapterTimeoutMs,
329
293
  })));
330
- }
331
- /** Lists static funding route candidates for a normalized caller request. */
332
- export function listStaticRoutes(options) {
294
+ const quotes = results.flatMap((result) => result.status === 'fulfilled' && result.value ? [result.value] : []);
295
+ const failures = results.flatMap((result, index) => result.status === 'rejected'
296
+ ? [{ cause: result.reason, provider: candidates[index].provider.id }]
297
+ : []);
298
+ if (quotes.length === 0 && failures.length > 0)
299
+ throw new ProviderQuoteError(failures);
300
+ return quotes;
301
+ }
302
+ /** Lists internal quote candidates for a normalized caller request. */
303
+ export function listQuoteCandidates(options) {
333
304
  const sourceChain = resolveSourceChain(options.sourceChain);
334
305
  const sourceToken = resolveSourceToken(sourceChain, options.sourceToken);
335
306
  const destinationToken = resolveDestinationToken(options.destinationToken);
@@ -348,8 +319,7 @@ export function listStaticRoutes(options) {
348
319
  .filter((entry) => entry.sourceTokens.includes(sourceToken.symbol))
349
320
  .filter((entry) => entry.destinationToken === destinationToken.slug)
350
321
  .filter((entry) => provider === undefined || entry.provider === provider.id)
351
- .slice(0, options.limit)
352
- .map((entry) => formatRouteCandidate({
322
+ .map((entry) => formatQuoteCandidate({
353
323
  destinationToken,
354
324
  provider: providers.find((candidate) => candidate.id === entry.provider),
355
325
  sourceAmount,
@@ -358,8 +328,14 @@ export function listStaticRoutes(options) {
358
328
  }));
359
329
  }
360
330
  function tokenKey(chain, token) {
361
- const standard = token.standard === 'SPL' ? 'spl' : token.standard === 'TRC-20' ? 'trc20' : 'erc20';
362
- return `${chain.id}/${standard}:${token.address}`;
331
+ const namespace = (() => {
332
+ if (chain.kind === 'solana')
333
+ return 'token';
334
+ if (chain.kind === 'tron')
335
+ return 'trc20';
336
+ return 'erc20';
337
+ })();
338
+ return `${chain.id}/${namespace}:${token.address}`;
363
339
  }
364
340
  function decimalFromBaseUnits(baseUnits, decimals) {
365
341
  const padded = baseUnits.padStart(decimals + 1, '0');
@@ -367,37 +343,31 @@ function decimalFromBaseUnits(baseUnits, decimals) {
367
343
  const fraction = decimals === 0 ? '' : padded.slice(-decimals).replace(/0+$/, '');
368
344
  return fraction ? `${whole}.${fraction}` : whole;
369
345
  }
370
- async function enrichRoute(route, options) {
371
- const adapter = options.adapters[route.provider.id];
346
+ async function quoteCandidate(candidate, options) {
347
+ const adapter = options.adapters[candidate.provider.id];
372
348
  if (!adapter)
373
- return route;
374
- try {
375
- const quote = await runWithTimeout((signal) => adapter.probeQuote({
376
- cache: options.cache,
377
- destinationChain: route.destinationChain,
378
- destinationToken: route.destinationToken,
379
- include: options.include,
380
- request: options.request,
381
- route,
382
- sourceAmount: route.sourceAmount,
383
- sourceChain: route.sourceChain,
384
- sourceToken: route.sourceToken,
385
- }, signal), options.timeoutMs);
386
- return {
387
- ...route,
388
- errorCode: quote.errorCode ?? null,
389
- quality: {
390
- ...route.quality,
391
- ...(quote.status === 'error' ? { tier: 'error' } : {}),
392
- ...quote.quality,
393
- },
394
- quote: quote.status === 'error' ? null : formatRouteQuote(route, quote),
395
- status: quote.status,
396
- };
397
- }
398
- catch (cause) {
399
- return markRouteError(route, cause instanceof ProviderAdapterTimeoutError ? 'provider_timeout' : 'provider_error'); // prettier-ignore
400
- }
349
+ return undefined;
350
+ const quote = await runWithTimeout((signal) => adapter.probeQuote({
351
+ cache: options.cache,
352
+ destinationChain: candidate.destinationChain,
353
+ destinationToken: candidate.destinationToken,
354
+ request: options.request,
355
+ candidate,
356
+ sourceAmount: candidate.sourceAmount,
357
+ sourceChain: candidate.sourceChain,
358
+ sourceToken: candidate.sourceToken,
359
+ }, signal), options.timeoutMs);
360
+ if (quote.status === 'unavailable')
361
+ return undefined;
362
+ if ((quote.status !== 'available' && quote.status !== 'thin') ||
363
+ quote.outputAmount === undefined ||
364
+ quote.outputAmount === null)
365
+ throw new InvalidProviderQuoteError();
366
+ return formatFundingQuote(candidate, {
367
+ ...quote,
368
+ outputAmount: quote.outputAmount,
369
+ status: quote.status,
370
+ });
401
371
  }
402
372
  function formatChain(chain) {
403
373
  const { addressFormat, id, kind, name, providerIds } = chain;
@@ -417,17 +387,16 @@ function formatDestinationToken(token) {
417
387
  }
418
388
  function formatProvider(provider) {
419
389
  const { id, kind, name, requiresApiKey, status } = provider;
420
- return { capabilities: [...provider.capabilities], id, kind, name, requiresApiKey, status };
390
+ return { id, kind, name, requiresApiKey, status };
421
391
  }
422
392
  function formatProviderRef(provider) {
423
393
  const { id, kind, name, requiresApiKey } = provider;
424
394
  return { id, kind, name, requiresApiKey };
425
395
  }
426
- function formatRouteCandidate(options) {
396
+ function formatQuoteCandidate(options) {
427
397
  return {
428
398
  destinationChain,
429
399
  destinationToken: formatDestinationToken(options.destinationToken),
430
- errorCode: null,
431
400
  id: [
432
401
  options.sourceChain.slug,
433
402
  options.sourceToken.symbol.toLowerCase(),
@@ -436,22 +405,9 @@ function formatRouteCandidate(options) {
436
405
  options.provider.id,
437
406
  ].join('-'),
438
407
  provider: formatProviderRef(options.provider),
439
- quality: {
440
- availableVolumeUsd: null,
441
- estimatedSeconds: null,
442
- feeBps: null,
443
- historicalVolumeUsd24h: null,
444
- instantVolumeUsd: null,
445
- liquiditySource: 'staticInventory',
446
- score: null,
447
- sourceDetail: null,
448
- tier: 'unknown',
449
- },
450
- quote: null,
451
408
  sourceAmount: options.sourceAmount,
452
409
  sourceChain: formatChain(options.sourceChain),
453
410
  sourceToken: formatSourceToken(options.sourceChain, options.sourceToken),
454
- status: 'unknown',
455
411
  };
456
412
  }
457
413
  function formatSourceToken(chain, token) {
@@ -485,36 +441,30 @@ function parseDecimalUnits(value, decimals) {
485
441
  throw new InvalidAmountError();
486
442
  return baseUnits.toString();
487
443
  }
488
- function formatRouteQuote(route, quote) {
444
+ function formatFundingQuote(candidate, quote) {
489
445
  return {
490
- expiresAt: quote.expiresAt ?? null,
491
- inputAmount: route.sourceAmount.amount,
492
- limits: quote.limits
493
- ? {
494
- instantSourceAmount: quote.limits.instantSourceAmount ?? null,
495
- maxSourceAmount: quote.limits.maxSourceAmount ?? null,
496
- minSourceAmount: quote.limits.minSourceAmount ?? null,
497
- }
498
- : null,
499
- minimumOutputAmount: quote.minimumOutputAmount ?? null,
500
- outputAmount: quote.outputAmount ?? null,
501
- outputAmountFormatted: quote.outputAmountFormatted ?? null,
502
- sampledAt: quote.sampledAt,
503
- };
504
- }
505
- function markRouteError(route, errorCode) {
506
- return {
507
- ...route,
508
- errorCode,
446
+ ...candidate,
509
447
  quality: {
510
- ...route.quality,
511
- liquiditySource: 'providerError',
512
- score: null,
513
- sourceDetail: null,
514
- tier: 'error',
448
+ ...(quote.quality?.estimatedSeconds !== undefined
449
+ ? { estimatedSeconds: quote.quality.estimatedSeconds }
450
+ : {}),
451
+ liquiditySource: quote.quality?.liquiditySource ?? 'providerQuote',
452
+ ...(quote.quality?.sourceDetail !== undefined
453
+ ? { sourceDetail: quote.quality.sourceDetail }
454
+ : {}),
455
+ tier: quote.status === 'thin' ? 'thin' : 'liquid',
456
+ },
457
+ quote: {
458
+ ...(quote.expiresAt !== undefined ? { expiresAt: quote.expiresAt } : {}),
459
+ inputAmount: candidate.sourceAmount.amount,
460
+ ...(quote.minimumOutputAmount !== undefined
461
+ ? { minimumOutputAmount: quote.minimumOutputAmount }
462
+ : {}),
463
+ outputAmount: quote.outputAmount,
464
+ outputAmountFormatted: quote.outputAmountFormatted ??
465
+ decimalFromBaseUnits(quote.outputAmount, candidate.destinationToken.decimals),
466
+ sampledAt: quote.sampledAt,
515
467
  },
516
- quote: null,
517
- status: 'error',
518
468
  };
519
469
  }
520
470
  function runWithTimeout(fn, timeoutMs) {
@@ -558,7 +508,6 @@ function resolveSourceAmount(options) {
558
508
  return {
559
509
  amount,
560
510
  formatted: decimalFromBaseUnits(amount, options.token.decimals),
561
- usd: null,
562
511
  };
563
512
  }
564
513
  function resolveSourceToken(chain, input) {
@@ -572,8 +521,11 @@ function matchesTokenIdentifier(chain, candidate, trimmed, normalized) {
572
521
  return chain.kind === 'evm' ? candidate.toLowerCase() === normalized : candidate === trimmed;
573
522
  }
574
523
  function resolveSourceChain(input) {
524
+ const trimmed = input.trim();
575
525
  const normalized = normalizeInput(input);
576
- const chain = sourceChains.find((candidate) => candidate.id === normalized || candidate.aliases.includes(normalized));
526
+ const chain = sourceChains.find((candidate) => candidate.id === trimmed ||
527
+ candidate.slug === normalized ||
528
+ (candidate.kind === 'evm' && candidate.aliases.includes(normalized)));
577
529
  if (!chain)
578
530
  throw new UnsupportedSourceChainError();
579
531
  return chain;
@@ -591,26 +543,35 @@ function validateSourceAmountSyntax(value, units) {
591
543
  }
592
544
  /** Error thrown when the caller supplies an unsupported destination token. */
593
545
  export class UnsupportedDestinationTokenError extends Error {
594
- name = 'FundingRoutes.UnsupportedDestinationTokenError';
546
+ name = 'FundingQuotes.UnsupportedDestinationTokenError';
595
547
  }
596
548
  /** Error thrown when the caller supplies an invalid source amount. */
597
549
  export class InvalidAmountError extends Error {
598
- name = 'FundingRoutes.InvalidAmountError';
550
+ name = 'FundingQuotes.InvalidAmountError';
599
551
  }
600
- /** Error thrown internally when a provider adapter exceeds its route quote timeout. */
552
+ /** Error thrown internally when a provider adapter exceeds its quote timeout. */
601
553
  export class ProviderAdapterTimeoutError extends Error {
602
- name = 'FundingRoutes.ProviderAdapterTimeoutError';
554
+ name = 'FundingQuotes.ProviderAdapterTimeoutError';
555
+ }
556
+ /** Error thrown when every matching provider fails to produce a quote. */
557
+ export class ProviderQuoteError extends Error {
558
+ name = 'FundingQuotes.ProviderQuoteError';
559
+ /** Provider failures that prevented a successful quote. */
560
+ failures;
561
+ constructor(failures) {
562
+ super();
563
+ this.failures = failures;
564
+ }
603
565
  }
604
566
  /** Error thrown when the caller filters to an unknown provider. */
605
567
  export class UnsupportedProviderError extends Error {
606
- name = 'FundingRoutes.UnsupportedProviderError';
607
- }
608
- /** Error thrown when the caller requests an unsupported include expansion. */
609
- export class UnsupportedIncludeError extends Error {
610
- name = 'FundingRoutes.UnsupportedIncludeError';
568
+ name = 'FundingQuotes.UnsupportedProviderError';
611
569
  }
612
570
  /** Error thrown when the caller supplies an unsupported source chain. */
613
571
  export class UnsupportedSourceChainError extends Error {
614
- name = 'FundingRoutes.UnsupportedSourceChainError';
572
+ name = 'FundingQuotes.UnsupportedSourceChainError';
573
+ }
574
+ class InvalidProviderQuoteError extends Error {
575
+ name = 'FundingQuotes.InvalidProviderQuoteError';
615
576
  }
616
- //# sourceMappingURL=FundingRoutes.js.map
577
+ //# sourceMappingURL=FundingQuotes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FundingQuotes.js","sourceRoot":"","sources":["../../src/internal/FundingQuotes.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,MAAM,gBAAgB,GAAG;IACvB,aAAa,EAAE,KAAK;IACpB,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,OAAO;CACL,CAAA;AAEV,iEAAiE;AACjE,MAAM,uBAAuB,GAAG,OAAO,CAAA;AAEvC,2DAA2D;AAC3D,MAAM,YAAY,GAAG;IACnB;QACE,aAAa,EAAE,KAAK;QACpB,OAAO,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;QACxC,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE;YACX,MAAM,EAAE,GAAG;YACX,KAAK,EAAE,GAAG;SACX;QACD,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,YAAY;gBACzB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,OAAO;aAChB;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,KAAK;aACd;SACF;KACF;IACD;QACE,aAAa,EAAE,KAAK;QACpB,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;QAChC,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;YACX,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,MAAM;SACd;QACD,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;SACF;KACF;IACD;QACE,aAAa,EAAE,KAAK;QACpB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC;QACpC,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;YACX,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,IAAI;SACZ;QACD,IAAI,EAAE,KAAK;QACX,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,sBAAsB;gBAC5B,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;YACD;gBACE,OAAO,EAAE,4CAA4C;gBACrD,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;SACF;KACF;IACD;QACE,aAAa,EAAE,QAAQ;QACvB,OAAO,EAAE,CAAC,QAAQ,EAAE,yCAAyC,CAAC;QAC9D,EAAE,EAAE,yCAAyC;QAC7C,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACX,KAAK,EAAE,QAAQ;SAChB;QACD,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,8CAA8C;gBACvD,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,MAAM;aACf;SACF;KACF;IACD;QACE,aAAa,EAAE,aAAa;QAC5B,OAAO,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC;QACpC,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;SACd;QACD,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,oCAAoC;gBAC7C,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;aACf;SACF;KACF;CACO,CAAA;AAEV,qEAAqE;AACrE,MAAM,iBAAiB,GAAG;IACxB;QACE,OAAO,EAAE,4CAA4C;QACrD,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,SAAS;KAClB;IACD;QACE,OAAO,EAAE,4CAA4C;QACrD,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,yBAAyB;QAC/B,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,QAAQ;KACjB;IACD;QACE,OAAO,EAAE,4CAA4C;QACrD,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,QAAQ;KACjB;IACD;QACE,OAAO,EAAE,4CAA4C;QACrD,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,OAAO;KAChB;IACD;QACE,OAAO,EAAE,4CAA4C;QACrD,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,QAAQ;KACjB;CACO,CAAA;AAEV,kDAAkD;AAClD,MAAM,SAAS,GAAG;IAChB;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,QAAQ;QACd,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,cAAc;KACvB;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,OAAO;QACb,cAAc,EAAE,KAAK;QACrB,MAAM,EAAE,cAAc;KACvB;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;QACb,cAAc,EAAE,KAAK;QACrB,MAAM,EAAE,cAAc;KACvB;CACO,CAAA;AAuHV,sEAAsE;AACtE,MAAM,SAAS,GAA8B;IAC3C,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB;IACxI,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,kBAAkB;IAC/I,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB;IAC9H,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB;CACrH,CAAA;AASD,MAAM,uBAAuB,GAAG,KAAK,CAAA;AAErC,8EAA8E;AAC9E,MAAM,UAAU,UAAU;IACxB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,SAAS;aACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC1D,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAC1C,CAAA;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;QACjC,OAAO;YACL;gBACE,GAAG,WAAW,CAAC,KAAK,CAAC;gBACrB,MAAM,EAAE,KAAK,CAAC,MAAM;qBACjB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;qBAC5C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aACnD;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,aAAa,CAAC,OAAO,GAA0B,EAAE;IAC/D,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClC,GAAG,cAAc,CAAC,QAAQ,CAAC;QAC3B,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,YAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM;KACpF,CAAC,CAAC,CAAA;AACL,CAAC;AAUD,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAA2B;IAC1D,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC3B,cAAc,CAAC,SAAS,EAAE;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAChC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;QACzC,OAAO,EAAE;YACP,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC;QACD,SAAS,EAAE,OAAO,CAAC,gBAAgB,IAAI,uBAAuB;KAC/D,CAAC,CACH,CACF,CAAA;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACxC,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CACpE,CAAA;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CACjD,MAAM,CAAC,MAAM,KAAK,UAAU;QAC1B,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACtE,CAAC,CAAC,EAAE,CACP,CAAA;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IACtF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,mBAAmB,CAAC,OAAoC;IACtE,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3D,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IACxE,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC1E,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEjF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,0BAA0B,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;QAC3E,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,YAAY,GAAG,mBAAmB,CAAC;QACvC,MAAM,EAAE,OAAO,CAAC,YAAY;QAC5B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,OAAO,CAAC,iBAAiB;KACjC,CAAC,CAAA;IAEF,OAAO,SAAS;SACb,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAChE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SAClE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,KAAK,gBAAgB,CAAC,IAAI,CAAC;SACnE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAC;SAC3E,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,oBAAoB,CAAC;QACnB,gBAAgB;QAChB,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAQ,CAAE;QACzE,YAAY;QACZ,WAAW;QACX,WAAW;KACZ,CAAC,CACH,CAAA;AACL,CAAC;AAmCD,SAAS,QAAQ,CAAC,KAAmC,EAAE,KAAyC;IAC9F,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;QACtB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,OAAO,CAAA;QAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,OAAO,CAAA;QACzC,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,CAAA;IACJ,OAAO,GAAG,KAAK,CAAC,EAAE,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,CAAA;AACpD,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,QAAgB;IAC/D,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACjF,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;AAClD,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,SAAyB,EACzB,OAKC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAgB,CAAC,CAAA;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IAE9B,MAAM,KAAK,GAAG,MAAM,cAAc,CAChC,CAAC,MAAM,EAAE,EAAE,CACT,OAAO,CAAC,UAAU,CAChB;QACE,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;QAC5C,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;QAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS;QACT,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,WAAW,EAAE,SAAS,CAAC,WAAW;KACnC,EACD,MAAM,CACP,EACH,OAAO,CAAC,SAAS,CAClB,CAAA;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,aAAa;QAAE,OAAO,SAAS,CAAA;IACpD,IACE,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;QACzD,KAAK,CAAC,YAAY,KAAK,SAAS;QAChC,KAAK,CAAC,YAAY,KAAK,IAAI;QAE3B,MAAM,IAAI,yBAAyB,EAAE,CAAA;IACvC,OAAO,kBAAkB,CAAC,SAAS,EAAE;QACnC,GAAG,KAAK;QACR,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,KAAK,CAAA;IAC5D,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;AACvD,CAAC;AAED,SAAS,sBAAsB,CAAC,KAA4B;IAC1D,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,EAAE,KAAK,CAAC;QAC3C,QAAQ,EAAE,IAAI;KACf,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,QAAuB;IAC7C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IAC3D,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,CAAA;AACnD,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAuB;IAChD,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAA;IACnD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,CAAA;AAC3C,CAAC;AAED,SAAS,oBAAoB,CAAC,OAM7B;IACC,OAAO;QACL,gBAAgB;QAChB,gBAAgB,EAAE,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAClE,EAAE,EAAE;YACF,OAAO,CAAC,WAAW,CAAC,IAAI;YACxB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE;YACxC,OAAO;YACP,OAAO,CAAC,gBAAgB,CAAC,IAAI;YAC7B,OAAO,CAAC,QAAQ,CAAC,EAAE;SACpB,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC7C,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC;QAC7C,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC;KAChE,CAAA;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAuB,EAAE,KAAiB;IACnE,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE;QAC5C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAChC,QAAQ,EAAE,IAAI;KACf,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;AACnC,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;IAC/E,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,QAAgB;IACxD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;IAChE,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;IAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IACrE,IAAI,SAAS,IAAI,EAAE;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;IACnD,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAA;AAC7B,CAAC;AAOD,SAAS,kBAAkB,CAAC,SAAyB,EAAE,KAA2B;IAChF,OAAO;QACL,GAAG,SAAS;QACZ,OAAO,EAAE;YACP,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,KAAK,SAAS;gBAC/C,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC;YACP,eAAe,EAAE,KAAK,CAAC,OAAO,EAAE,eAAe,IAAI,eAAe;YAClE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,KAAK,SAAS;gBAC3C,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE;gBAC9C,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,EAAE,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAE,QAAkB;SACxE;QACD,KAAK,EAAE;YACL,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,WAAW,EAAE,SAAS,CAAC,YAAY,CAAC,MAAM;YAC1C,GAAG,CAAC,KAAK,CAAC,mBAAmB,KAAK,SAAS;gBACzC,CAAC,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAAE;gBACpD,CAAC,CAAC,EAAE,CAAC;YACP,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,qBAAqB,EACnB,KAAK,CAAC,qBAAqB;gBAC3B,oBAAoB,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC;YAC/E,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B;KACO,CAAA;AACZ,CAAC;AAED,SAAS,cAAc,CAAS,EAA4C,EAAE,SAAiB;IAC7F,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAA;IAC/D,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QACrB,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC/B,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,CAAC,IAAI,2BAA2B,EAAE,CAAC,CAAA;gBACzC,OAAM;YACR,CAAC;YACD,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,2BAA2B,EAAE,CAAC,EAAE;gBAC3F,IAAI,EAAE,IAAI;aACX,CAAC,CAAA;QACJ,CAAC,CAAC;KACH,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAyB;IACxD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAuB,CAAE,CAAA,CAAC,kBAAkB;IAC7H,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACxC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAClC,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,IAAI,KAAK,UAAU;QAC7B,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU;QAC7C,SAAS,CAAC,OAAO,KAAK,UAAU;QAChC,QAAQ,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CACrE,CAAA;IACD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,gCAAgC,EAAE,CAAA;IACxD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,cAAc,CAAC,KAAK,CAAC,CAAC,CAAA;IACtF,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,wBAAwB,EAAE,CAAA;IACnD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoC;IAC/D,MAAM,MAAM,GACV,OAAO,CAAC,KAAK,KAAK,WAAW;QAC3B,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC/D,OAAO;QACL,MAAM;QACN,SAAS,EAAE,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;KAChE,CAAA;AACH,CAAC;AAUD,SAAS,kBAAkB,CAAC,KAAuB,EAAE,KAAa;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;IACxC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CACtB,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,UAAU;QACzC,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC;QACjE,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAC7E,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAuB,EACvB,SAAiB,EACjB,OAAe,EACf,UAAkB;IAElB,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAA;AAC9F,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACxC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAC7B,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,EAAE,KAAK,OAAO;QACxB,SAAS,CAAC,IAAI,KAAK,UAAU;QAC7B,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,IAAK,SAAS,CAAC,OAA6B,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC9F,CAAA;IACD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,2BAA2B,EAAE,CAAA;IACnD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAa,EAAE,KAAwB;IACzE,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;QAC1B,cAAc,CAAC,KAAK,CAAC,CAAA;QACrB,OAAM;IACR,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;IAChE,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;AACzE,CAAC;AAED,8EAA8E;AAC9E,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IAChD,IAAI,GAAG,gDAAgD,CAAA;CACjE;AAED,sEAAsE;AACtE,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,IAAI,GAAG,kCAAkC,CAAA;CACnD;AAED,iFAAiF;AACjF,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,GAAG,2CAA2C,CAAA;CAC5D;AAED,0EAA0E;AAC1E,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,IAAI,GAAG,kCAAkC,CAAA;IAElD,2DAA2D;IAC3D,QAAQ,CAA4B;IAEpC,YAAY,QAAoC;QAC9C,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAED,mEAAmE;AACnE,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,IAAI,GAAG,wCAAwC,CAAA;CACzD;AAED,yEAAyE;AACzE,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAC3C,IAAI,GAAG,2CAA2C,CAAA;CAC5D;AAED,MAAM,yBAA0B,SAAQ,KAAK;IAClC,IAAI,GAAG,yCAAyC,CAAA;CAC1D"}
@@ -10,6 +10,8 @@ export type Variables = {
10
10
  errorCode?: string | undefined;
11
11
  /** Redacted provider failure details recorded by an upstream adapter. */
12
12
  providerFailure?: Entry['provider'] | undefined;
13
+ /** Redacted provider failures when multiple upstream adapters fail. */
14
+ providerFailures?: Entry['providerFailures'] | undefined;
13
15
  };
14
16
  /** Hono environment shape used by the request logger. */
15
17
  export type Environment = {
@@ -20,6 +22,19 @@ export type Environment = {
20
22
  };
21
23
  /** Log level, derived from the response status. */
22
24
  export type Level = 'error' | 'info' | 'warn';
25
+ /** Redacted upstream provider failure details. */
26
+ export type ProviderFailure = {
27
+ /** Stable provider error code, when one is safe to retain. */
28
+ code?: string | undefined;
29
+ /** Failure boundary that rejected the provider request. */
30
+ failure: 'http' | 'network' | 'payload' | 'timeout' | 'unknown';
31
+ /** Provider identifier. */
32
+ id: string;
33
+ /** Provider operation identifier. */
34
+ operation: string;
35
+ /** Upstream HTTP status, when a response was received. */
36
+ status?: number | undefined;
37
+ };
23
38
  /** One canonical request log entry. */
24
39
  export type Entry = {
25
40
  /** `'hit'` when the edge response cache served the request without reaching the origin handlers. */
@@ -54,18 +69,9 @@ export type Entry = {
54
69
  type: 'api_key' | 'public' | 'session' | 'super_admin';
55
70
  } | undefined;
56
71
  /** Redacted upstream provider failure details, when an adapter request fails. */
57
- provider?: {
58
- /** Stable provider error code, when one is safe to retain. */
59
- code?: string | undefined;
60
- /** Failure boundary that rejected the provider request. */
61
- failure: 'http' | 'network' | 'payload' | 'unknown';
62
- /** Provider identifier. */
63
- id: string;
64
- /** Provider operation identifier. */
65
- operation: string;
66
- /** Upstream HTTP status, when a response was received. */
67
- status?: number | undefined;
68
- } | undefined;
72
+ provider?: ProviderFailure | undefined;
73
+ /** Redacted failures for every provider when multiple adapters fail. */
74
+ providerFailures?: readonly ProviderFailure[] | undefined;
69
75
  /** Raw query string (no leading `?`) with API-key tokens redacted, when present. */
70
76
  query?: string | undefined;
71
77
  /** Rate limit state from the `RateLimit-*` response headers, when enforced. */
@@ -1 +1 @@
1
- {"version":3,"file":"Log.d.ts","sourceRoot":"","sources":["../../src/internal/Log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Log.d.ts","sourceRoot":"","sources":["../../src/internal/Log.ts"],"names":[],"mappings":"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"}