@metamask-previews/bridge-controller 80.0.0-preview-3e34650c2 → 80.1.0-preview-4f4c98e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -1
- package/dist/{bridge-controller-method-action-types.d.mts → bridge-controller-method-action-types.d.ts} +2 -2
- package/dist/bridge-controller-method-action-types.d.ts.map +1 -0
- package/dist/{bridge-controller-method-action-types.mjs → bridge-controller-method-action-types.js} +1 -1
- package/dist/bridge-controller-method-action-types.js.map +1 -0
- package/dist/{bridge-controller.d.cts → bridge-controller.d.ts} +21 -21
- package/dist/bridge-controller.d.ts.map +1 -0
- package/dist/{bridge-controller.mjs → bridge-controller.js} +32 -31
- package/dist/bridge-controller.js.map +1 -0
- package/dist/coercers/{quote-response-v1-to-v2.d.cts → quote-response-v1-to-v2.d.ts} +4 -4
- package/dist/coercers/quote-response-v1-to-v2.d.ts.map +1 -0
- package/dist/coercers/{quote-response-v1-to-v2.mjs → quote-response-v1-to-v2.js} +11 -11
- package/dist/coercers/quote-response-v1-to-v2.js.map +1 -0
- package/dist/coercers/{quote-response-v2-to-v1.d.cts → quote-response-v2-to-v1.d.ts} +4 -4
- package/dist/coercers/quote-response-v2-to-v1.d.ts.map +1 -0
- package/dist/coercers/{quote-response-v2-to-v1.mjs → quote-response-v2-to-v1.js} +10 -10
- package/dist/coercers/quote-response-v2-to-v1.js.map +1 -0
- package/dist/constants/{bridge.d.mts → bridge.d.ts} +38 -38
- package/dist/constants/bridge.d.ts.map +1 -0
- package/dist/constants/{bridge.mjs → bridge.js} +4 -4
- package/dist/constants/bridge.js.map +1 -0
- package/dist/constants/{chains.d.cts → chains.d.ts} +84 -84
- package/dist/constants/chains.d.ts.map +1 -0
- package/dist/constants/{chains.mjs → chains.js} +1 -1
- package/dist/constants/chains.js.map +1 -0
- package/dist/constants/{swaps.d.cts → swaps.d.ts} +2 -2
- package/dist/constants/swaps.d.ts.map +1 -0
- package/dist/constants/{swaps.mjs → swaps.js} +2 -2
- package/dist/constants/swaps.js.map +1 -0
- package/dist/constants/{tokens.d.mts → tokens.d.ts} +34 -34
- package/dist/constants/tokens.d.ts.map +1 -0
- package/dist/constants/{tokens.mjs → tokens.js} +3 -3
- package/dist/constants/tokens.js.map +1 -0
- package/dist/constants/{traces.d.cts → traces.d.ts} +1 -1
- package/dist/constants/traces.d.ts.map +1 -0
- package/dist/constants/{traces.mjs → traces.js} +1 -1
- package/dist/constants/traces.js.map +1 -0
- package/dist/{index.d.mts → index.d.ts} +52 -52
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/index.js.map +1 -0
- package/dist/{selectors.d.cts → selectors.d.ts} +7036 -7036
- package/dist/selectors.d.ts.map +1 -0
- package/dist/{selectors.mjs → selectors.js} +17 -18
- package/dist/selectors.js.map +1 -0
- package/dist/{types.d.cts → types.d.ts} +27 -27
- package/dist/types.d.ts.map +1 -0
- package/dist/{types.mjs → types.js} +1 -1
- package/dist/types.js.map +1 -0
- package/dist/utils/{assets.d.cts → assets.d.ts} +4 -4
- package/dist/utils/assets.d.ts.map +1 -0
- package/dist/utils/{assets.mjs → assets.js} +4 -4
- package/dist/utils/assets.js.map +1 -0
- package/dist/utils/{balance.d.cts → balance.d.ts} +4 -4
- package/dist/utils/balance.d.ts.map +1 -0
- package/dist/utils/{balance.mjs → balance.js} +6 -6
- package/dist/utils/balance.js.map +1 -0
- package/dist/utils/{bridge.d.mts → bridge.d.ts} +8 -23
- package/dist/utils/bridge.d.ts.map +1 -0
- package/dist/utils/{bridge.mjs → bridge.js} +12 -12
- package/dist/utils/bridge.js.map +1 -0
- package/dist/utils/{caip-formatters.d.mts → caip-formatters.d.ts} +3 -3
- package/dist/utils/caip-formatters.d.ts.map +1 -0
- package/dist/utils/{caip-formatters.mjs → caip-formatters.js} +9 -9
- package/dist/utils/caip-formatters.js.map +1 -0
- package/dist/utils/{feature-flags.d.mts → feature-flags.d.ts} +9 -9
- package/dist/utils/feature-flags.d.ts.map +1 -0
- package/dist/utils/{feature-flags.mjs → feature-flags.js} +4 -4
- package/dist/utils/feature-flags.js.map +1 -0
- package/dist/utils/{fetch-server-events.d.cts → fetch-server-events.d.ts} +3 -3
- package/dist/utils/fetch-server-events.d.ts.map +1 -0
- package/dist/utils/{fetch-server-events.mjs → fetch-server-events.js} +1 -1
- package/dist/utils/fetch-server-events.js.map +1 -0
- package/dist/utils/{fetch.d.mts → fetch.d.ts} +15 -15
- package/dist/utils/fetch.d.ts.map +1 -0
- package/dist/utils/{fetch.mjs → fetch.js} +15 -15
- package/dist/utils/fetch.js.map +1 -0
- package/dist/utils/metrics/{constants.d.mts → constants.d.ts} +1 -1
- package/dist/utils/metrics/constants.d.ts.map +1 -0
- package/dist/utils/metrics/{constants.mjs → constants.js} +1 -1
- package/dist/utils/metrics/constants.js.map +1 -0
- package/dist/utils/metrics/{properties.d.cts → properties.d.ts} +22 -14
- package/dist/utils/metrics/properties.d.ts.map +1 -0
- package/dist/utils/metrics/{properties.mjs → properties.js} +20 -11
- package/dist/utils/metrics/properties.js.map +1 -0
- package/dist/utils/metrics/{types.d.cts → types.d.ts} +10 -6
- package/dist/utils/metrics/types.d.ts.map +1 -0
- package/dist/utils/metrics/types.js +2 -0
- package/dist/utils/metrics/types.js.map +1 -0
- package/dist/utils/{number-formatters.d.cts → number-formatters.d.ts} +4 -4
- package/dist/utils/number-formatters.d.ts.map +1 -0
- package/dist/utils/{number-formatters.mjs → number-formatters.js} +3 -3
- package/dist/utils/number-formatters.js.map +1 -0
- package/dist/utils/quote-fees.d.ts +17 -0
- package/dist/utils/quote-fees.d.ts.map +1 -0
- package/dist/utils/{quote-fees.mjs → quote-fees.js} +7 -7
- package/dist/utils/quote-fees.js.map +1 -0
- package/dist/utils/quote-metadata/{calculators.d.cts → calculators.d.ts} +12 -12
- package/dist/utils/quote-metadata/calculators.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{calculators.mjs → calculators.js} +11 -11
- package/dist/utils/quote-metadata/calculators.js.map +1 -0
- package/dist/utils/quote-metadata/{include-if-truthy.d.mts → include-if-truthy.d.ts} +1 -1
- package/dist/utils/quote-metadata/include-if-truthy.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{include-if-truthy.mjs → include-if-truthy.js} +1 -1
- package/dist/utils/quote-metadata/include-if-truthy.js.map +1 -0
- package/dist/utils/quote-metadata/{merge.d.cts → merge.d.ts} +5 -5
- package/dist/utils/quote-metadata/merge.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{merge.mjs → merge.js} +6 -7
- package/dist/utils/quote-metadata/merge.js.map +1 -0
- package/dist/utils/quote-metadata/{to-currency-values.d.cts → to-currency-values.d.ts} +4 -4
- package/dist/utils/quote-metadata/to-currency-values.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{to-currency-values.mjs → to-currency-values.js} +2 -3
- package/dist/utils/quote-metadata/to-currency-values.js.map +1 -0
- package/dist/utils/quote-metadata/{to-normalized-amounts.d.mts → to-normalized-amounts.d.ts} +3 -3
- package/dist/utils/quote-metadata/to-normalized-amounts.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{to-normalized-amounts.mjs → to-normalized-amounts.js} +3 -3
- package/dist/utils/quote-metadata/to-normalized-amounts.js.map +1 -0
- package/dist/utils/quote-metadata/{to-quote-metadata-v1.d.cts → to-quote-metadata-v1.d.ts} +6 -6
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{to-quote-metadata-v1.mjs → to-quote-metadata-v1.js} +6 -7
- package/dist/utils/quote-metadata/to-quote-metadata-v1.js.map +1 -0
- package/dist/utils/quote-metadata/{to-quote-metadata-v2.d.cts → to-quote-metadata-v2.d.ts} +4 -4
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{to-quote-metadata-v2.mjs → to-quote-metadata-v2.js} +6 -6
- package/dist/utils/quote-metadata/to-quote-metadata-v2.js.map +1 -0
- package/dist/utils/quote-metadata/{types.d.cts → types.d.ts} +5 -5
- package/dist/utils/quote-metadata/types.d.ts.map +1 -0
- package/dist/utils/quote-metadata/{types.mjs → types.js} +1 -1
- package/dist/utils/quote-metadata/types.js.map +1 -0
- package/dist/utils/{slippage.d.cts → slippage.d.ts} +2 -2
- package/dist/utils/slippage.d.ts.map +1 -0
- package/dist/utils/{slippage.mjs → slippage.js} +2 -2
- package/dist/utils/slippage.js.map +1 -0
- package/dist/utils/{snaps.d.mts → snaps.d.ts} +5 -5
- package/dist/utils/snaps.d.ts.map +1 -0
- package/dist/utils/{snaps.mjs → snaps.js} +4 -4
- package/dist/utils/snaps.js.map +1 -0
- package/dist/utils/sort-quotes.d.ts +4 -0
- package/dist/utils/sort-quotes.d.ts.map +1 -0
- package/dist/utils/{sort-quotes.mjs → sort-quotes.js} +2 -2
- package/dist/utils/sort-quotes.js.map +1 -0
- package/dist/utils/{struct-error.d.mts → struct-error.d.ts} +2 -2
- package/dist/utils/struct-error.d.ts.map +1 -0
- package/dist/utils/{struct-error.mjs → struct-error.js} +1 -1
- package/dist/utils/struct-error.js.map +1 -0
- package/dist/utils/{swaps.d.cts → swaps.d.ts} +3 -3
- package/dist/utils/swaps.d.ts.map +1 -0
- package/dist/utils/{swaps.mjs → swaps.js} +5 -5
- package/dist/utils/swaps.js.map +1 -0
- package/dist/utils/{trade-utils.d.cts → trade-utils.d.ts} +2 -2
- package/dist/utils/trade-utils.d.ts.map +1 -0
- package/dist/utils/{trade-utils.mjs → trade-utils.js} +2 -2
- package/dist/utils/trade-utils.js.map +1 -0
- package/dist/validators/{amount-and-asset.d.cts → amount-and-asset.d.ts} +8 -8
- package/dist/validators/amount-and-asset.d.ts.map +1 -0
- package/dist/validators/{amount-and-asset.mjs → amount-and-asset.js} +4 -4
- package/dist/validators/amount-and-asset.js.map +1 -0
- package/dist/validators/{batch-sell.d.cts → batch-sell.d.ts} +8 -39
- package/dist/validators/batch-sell.d.ts.map +1 -0
- package/dist/validators/{batch-sell.mjs → batch-sell.js} +7 -7
- package/dist/validators/batch-sell.js.map +1 -0
- package/dist/validators/{bridge-asset.d.mts → bridge-asset.d.ts} +10 -42
- package/dist/validators/bridge-asset.d.ts.map +1 -0
- package/dist/validators/{bridge-asset.mjs → bridge-asset.js} +3 -3
- package/dist/validators/bridge-asset.js.map +1 -0
- package/dist/validators/{feature-flags.d.mts → feature-flags.d.ts} +16 -60
- package/dist/validators/feature-flags.d.ts.map +1 -0
- package/dist/validators/{feature-flags.mjs → feature-flags.js} +3 -3
- package/dist/validators/feature-flags.js.map +1 -0
- package/dist/validators/{intent.d.cts → intent.d.ts} +12 -12
- package/dist/validators/intent.d.ts.map +1 -0
- package/dist/validators/{intent.mjs → intent.js} +4 -4
- package/dist/validators/intent.js.map +1 -0
- package/dist/validators/{number.d.cts → number.d.ts} +1 -1
- package/dist/validators/number.d.ts.map +1 -0
- package/dist/validators/{number.mjs → number.js} +2 -2
- package/dist/validators/number.js.map +1 -0
- package/dist/validators/{quote-request.d.cts → quote-request.d.ts} +2 -2
- package/dist/validators/quote-request.d.ts.map +1 -0
- package/dist/validators/{quote-request.mjs → quote-request.js} +2 -2
- package/dist/validators/quote-request.js.map +1 -0
- package/dist/validators/{quote-response-v1.d.cts → quote-response-v1.d.ts} +128 -335
- package/dist/validators/quote-response-v1.d.ts.map +1 -0
- package/dist/validators/{quote-response-v1.mjs → quote-response-v1.js} +7 -7
- package/dist/validators/quote-response-v1.js.map +1 -0
- package/dist/validators/{quote-response.d.mts → quote-response.d.ts} +414 -414
- package/dist/validators/{quote-response.d.cts.map → quote-response.d.ts.map} +1 -1
- package/dist/validators/{quote-response.mjs → quote-response.js} +7 -7
- package/dist/validators/quote-response.js.map +1 -0
- package/dist/validators/{quote-stream-complete.d.cts → quote-stream-complete.d.ts} +7 -11
- package/dist/validators/quote-stream-complete.d.ts.map +1 -0
- package/dist/validators/{quote-stream-complete.mjs → quote-stream-complete.js} +2 -2
- package/dist/validators/quote-stream-complete.js.map +1 -0
- package/dist/validators/{quote.d.cts → quote.d.ts} +132 -132
- package/dist/validators/quote.d.ts.map +1 -0
- package/dist/validators/{quote.mjs → quote.js} +7 -7
- package/dist/validators/quote.js.map +1 -0
- package/dist/validators/{step.d.cts → step.d.ts} +56 -56
- package/dist/validators/step.d.ts.map +1 -0
- package/dist/validators/{step.mjs → step.js} +4 -4
- package/dist/validators/step.js.map +1 -0
- package/dist/validators/{token-feature.d.cts → token-feature.d.ts} +6 -9
- package/dist/validators/token-feature.d.ts.map +1 -0
- package/dist/validators/{token-feature.mjs → token-feature.js} +2 -2
- package/dist/validators/token-feature.js.map +1 -0
- package/dist/validators/{trade.d.mts → trade.d.ts} +7 -31
- package/dist/validators/trade.d.ts.map +1 -0
- package/dist/validators/{trade.mjs → trade.js} +2 -2
- package/dist/validators/trade.js.map +1 -0
- package/package.json +14 -18
- package/dist/bridge-controller-method-action-types.cjs +0 -7
- package/dist/bridge-controller-method-action-types.cjs.map +0 -1
- package/dist/bridge-controller-method-action-types.d.cts +0 -50
- package/dist/bridge-controller-method-action-types.d.cts.map +0 -1
- package/dist/bridge-controller-method-action-types.d.mts.map +0 -1
- package/dist/bridge-controller-method-action-types.mjs.map +0 -1
- package/dist/bridge-controller.cjs +0 -1043
- package/dist/bridge-controller.cjs.map +0 -1
- package/dist/bridge-controller.d.cts.map +0 -1
- package/dist/bridge-controller.d.mts +0 -127
- package/dist/bridge-controller.d.mts.map +0 -1
- package/dist/bridge-controller.mjs.map +0 -1
- package/dist/coercers/quote-response-v1-to-v2.cjs +0 -139
- package/dist/coercers/quote-response-v1-to-v2.cjs.map +0 -1
- package/dist/coercers/quote-response-v1-to-v2.d.cts.map +0 -1
- package/dist/coercers/quote-response-v1-to-v2.d.mts +0 -13
- package/dist/coercers/quote-response-v1-to-v2.d.mts.map +0 -1
- package/dist/coercers/quote-response-v1-to-v2.mjs.map +0 -1
- package/dist/coercers/quote-response-v2-to-v1.cjs +0 -162
- package/dist/coercers/quote-response-v2-to-v1.cjs.map +0 -1
- package/dist/coercers/quote-response-v2-to-v1.d.cts.map +0 -1
- package/dist/coercers/quote-response-v2-to-v1.d.mts +0 -13
- package/dist/coercers/quote-response-v2-to-v1.d.mts.map +0 -1
- package/dist/coercers/quote-response-v2-to-v1.mjs.map +0 -1
- package/dist/constants/bridge.cjs +0 -98
- package/dist/constants/bridge.cjs.map +0 -1
- package/dist/constants/bridge.d.cts +0 -77
- package/dist/constants/bridge.d.cts.map +0 -1
- package/dist/constants/bridge.d.mts.map +0 -1
- package/dist/constants/bridge.mjs.map +0 -1
- package/dist/constants/chains.cjs +0 -174
- package/dist/constants/chains.cjs.map +0 -1
- package/dist/constants/chains.d.cts.map +0 -1
- package/dist/constants/chains.d.mts +0 -171
- package/dist/constants/chains.d.mts.map +0 -1
- package/dist/constants/chains.mjs.map +0 -1
- package/dist/constants/swaps.cjs +0 -98
- package/dist/constants/swaps.cjs.map +0 -1
- package/dist/constants/swaps.d.cts.map +0 -1
- package/dist/constants/swaps.d.mts +0 -6
- package/dist/constants/swaps.d.mts.map +0 -1
- package/dist/constants/swaps.mjs.map +0 -1
- package/dist/constants/tokens.cjs +0 -212
- package/dist/constants/tokens.cjs.map +0 -1
- package/dist/constants/tokens.d.cts +0 -195
- package/dist/constants/tokens.d.cts.map +0 -1
- package/dist/constants/tokens.d.mts.map +0 -1
- package/dist/constants/tokens.mjs.map +0 -1
- package/dist/constants/traces.cjs +0 -11
- package/dist/constants/traces.cjs.map +0 -1
- package/dist/constants/traces.d.cts.map +0 -1
- package/dist/constants/traces.d.mts +0 -7
- package/dist/constants/traces.d.mts.map +0 -1
- package/dist/constants/traces.mjs.map +0 -1
- package/dist/index.cjs +0 -166
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -60
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.mts.map +0 -1
- package/dist/index.mjs +0 -47
- package/dist/index.mjs.map +0 -1
- package/dist/selectors.cjs +0 -449
- package/dist/selectors.cjs.map +0 -1
- package/dist/selectors.d.cts.map +0 -1
- package/dist/selectors.d.mts +0 -13877
- package/dist/selectors.d.mts.map +0 -1
- package/dist/selectors.mjs.map +0 -1
- package/dist/types.cjs +0 -66
- package/dist/types.cjs.map +0 -1
- package/dist/types.d.cts.map +0 -1
- package/dist/types.d.mts +0 -283
- package/dist/types.d.mts.map +0 -1
- package/dist/types.mjs.map +0 -1
- package/dist/utils/assets.cjs +0 -43
- package/dist/utils/assets.cjs.map +0 -1
- package/dist/utils/assets.d.cts.map +0 -1
- package/dist/utils/assets.d.mts +0 -10
- package/dist/utils/assets.d.mts.map +0 -1
- package/dist/utils/assets.mjs.map +0 -1
- package/dist/utils/balance.cjs +0 -34
- package/dist/utils/balance.cjs.map +0 -1
- package/dist/utils/balance.d.cts.map +0 -1
- package/dist/utils/balance.d.mts +0 -7
- package/dist/utils/balance.d.mts.map +0 -1
- package/dist/utils/balance.mjs.map +0 -1
- package/dist/utils/bridge.cjs +0 -204
- package/dist/utils/bridge.cjs.map +0 -1
- package/dist/utils/bridge.d.cts +0 -97
- package/dist/utils/bridge.d.cts.map +0 -1
- package/dist/utils/bridge.d.mts.map +0 -1
- package/dist/utils/bridge.mjs.map +0 -1
- package/dist/utils/caip-formatters.cjs +0 -157
- package/dist/utils/caip-formatters.cjs.map +0 -1
- package/dist/utils/caip-formatters.d.cts +0 -40
- package/dist/utils/caip-formatters.d.cts.map +0 -1
- package/dist/utils/caip-formatters.d.mts.map +0 -1
- package/dist/utils/caip-formatters.mjs.map +0 -1
- package/dist/utils/feature-flags.cjs +0 -77
- package/dist/utils/feature-flags.cjs.map +0 -1
- package/dist/utils/feature-flags.d.cts +0 -52
- package/dist/utils/feature-flags.d.cts.map +0 -1
- package/dist/utils/feature-flags.d.mts.map +0 -1
- package/dist/utils/feature-flags.mjs.map +0 -1
- package/dist/utils/fetch-server-events.cjs +0 -70
- package/dist/utils/fetch-server-events.cjs.map +0 -1
- package/dist/utils/fetch-server-events.d.cts.map +0 -1
- package/dist/utils/fetch-server-events.d.mts +0 -17
- package/dist/utils/fetch-server-events.d.mts.map +0 -1
- package/dist/utils/fetch-server-events.mjs.map +0 -1
- package/dist/utils/fetch.cjs +0 -426
- package/dist/utils/fetch.cjs.map +0 -1
- package/dist/utils/fetch.d.cts +0 -114
- package/dist/utils/fetch.d.cts.map +0 -1
- package/dist/utils/fetch.d.mts.map +0 -1
- package/dist/utils/fetch.mjs.map +0 -1
- package/dist/utils/metrics/constants.cjs +0 -103
- package/dist/utils/metrics/constants.cjs.map +0 -1
- package/dist/utils/metrics/constants.d.cts +0 -91
- package/dist/utils/metrics/constants.d.cts.map +0 -1
- package/dist/utils/metrics/constants.d.mts.map +0 -1
- package/dist/utils/metrics/constants.mjs.map +0 -1
- package/dist/utils/metrics/properties.cjs +0 -131
- package/dist/utils/metrics/properties.cjs.map +0 -1
- package/dist/utils/metrics/properties.d.cts.map +0 -1
- package/dist/utils/metrics/properties.d.mts +0 -58
- package/dist/utils/metrics/properties.d.mts.map +0 -1
- package/dist/utils/metrics/properties.mjs.map +0 -1
- package/dist/utils/metrics/types.cjs +0 -3
- package/dist/utils/metrics/types.cjs.map +0 -1
- package/dist/utils/metrics/types.d.cts.map +0 -1
- package/dist/utils/metrics/types.d.mts +0 -307
- package/dist/utils/metrics/types.d.mts.map +0 -1
- package/dist/utils/metrics/types.mjs +0 -2
- package/dist/utils/metrics/types.mjs.map +0 -1
- package/dist/utils/number-formatters.cjs +0 -107
- package/dist/utils/number-formatters.cjs.map +0 -1
- package/dist/utils/number-formatters.d.cts.map +0 -1
- package/dist/utils/number-formatters.d.mts +0 -34
- package/dist/utils/number-formatters.d.mts.map +0 -1
- package/dist/utils/number-formatters.mjs.map +0 -1
- package/dist/utils/quote-fees.cjs +0 -144
- package/dist/utils/quote-fees.cjs.map +0 -1
- package/dist/utils/quote-fees.d.cts +0 -21
- package/dist/utils/quote-fees.d.cts.map +0 -1
- package/dist/utils/quote-fees.d.mts +0 -21
- package/dist/utils/quote-fees.d.mts.map +0 -1
- package/dist/utils/quote-fees.mjs.map +0 -1
- package/dist/utils/quote-metadata/calculators.cjs +0 -345
- package/dist/utils/quote-metadata/calculators.cjs.map +0 -1
- package/dist/utils/quote-metadata/calculators.d.cts.map +0 -1
- package/dist/utils/quote-metadata/calculators.d.mts +0 -121
- package/dist/utils/quote-metadata/calculators.d.mts.map +0 -1
- package/dist/utils/quote-metadata/calculators.mjs.map +0 -1
- package/dist/utils/quote-metadata/include-if-truthy.cjs +0 -21
- package/dist/utils/quote-metadata/include-if-truthy.cjs.map +0 -1
- package/dist/utils/quote-metadata/include-if-truthy.d.cts +0 -9
- package/dist/utils/quote-metadata/include-if-truthy.d.cts.map +0 -1
- package/dist/utils/quote-metadata/include-if-truthy.d.mts.map +0 -1
- package/dist/utils/quote-metadata/include-if-truthy.mjs.map +0 -1
- package/dist/utils/quote-metadata/merge.cjs +0 -60
- package/dist/utils/quote-metadata/merge.cjs.map +0 -1
- package/dist/utils/quote-metadata/merge.d.cts.map +0 -1
- package/dist/utils/quote-metadata/merge.d.mts +0 -15
- package/dist/utils/quote-metadata/merge.d.mts.map +0 -1
- package/dist/utils/quote-metadata/merge.mjs.map +0 -1
- package/dist/utils/quote-metadata/to-currency-values.cjs +0 -62
- package/dist/utils/quote-metadata/to-currency-values.cjs.map +0 -1
- package/dist/utils/quote-metadata/to-currency-values.d.cts.map +0 -1
- package/dist/utils/quote-metadata/to-currency-values.d.mts +0 -12
- package/dist/utils/quote-metadata/to-currency-values.d.mts.map +0 -1
- package/dist/utils/quote-metadata/to-currency-values.mjs.map +0 -1
- package/dist/utils/quote-metadata/to-normalized-amounts.cjs +0 -38
- package/dist/utils/quote-metadata/to-normalized-amounts.cjs.map +0 -1
- package/dist/utils/quote-metadata/to-normalized-amounts.d.cts +0 -10
- package/dist/utils/quote-metadata/to-normalized-amounts.d.cts.map +0 -1
- package/dist/utils/quote-metadata/to-normalized-amounts.d.mts.map +0 -1
- package/dist/utils/quote-metadata/to-normalized-amounts.mjs.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.cjs +0 -94
- package/dist/utils/quote-metadata/to-quote-metadata-v1.cjs.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.cts.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.mts +0 -15
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.mts.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.mjs.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.cjs +0 -84
- package/dist/utils/quote-metadata/to-quote-metadata-v2.cjs.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.cts.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.mts +0 -12
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.mts.map +0 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.mjs.map +0 -1
- package/dist/utils/quote-metadata/types.cjs +0 -19
- package/dist/utils/quote-metadata/types.cjs.map +0 -1
- package/dist/utils/quote-metadata/types.d.cts.map +0 -1
- package/dist/utils/quote-metadata/types.d.mts +0 -108
- package/dist/utils/quote-metadata/types.d.mts.map +0 -1
- package/dist/utils/quote-metadata/types.mjs.map +0 -1
- package/dist/utils/slippage.cjs +0 -49
- package/dist/utils/slippage.cjs.map +0 -1
- package/dist/utils/slippage.d.cts.map +0 -1
- package/dist/utils/slippage.d.mts +0 -23
- package/dist/utils/slippage.d.mts.map +0 -1
- package/dist/utils/slippage.mjs.map +0 -1
- package/dist/utils/snaps.cjs +0 -76
- package/dist/utils/snaps.cjs.map +0 -1
- package/dist/utils/snaps.d.cts +0 -59
- package/dist/utils/snaps.d.cts.map +0 -1
- package/dist/utils/snaps.d.mts.map +0 -1
- package/dist/utils/snaps.mjs.map +0 -1
- package/dist/utils/sort-quotes.cjs +0 -16
- package/dist/utils/sort-quotes.cjs.map +0 -1
- package/dist/utils/sort-quotes.d.cts +0 -4
- package/dist/utils/sort-quotes.d.cts.map +0 -1
- package/dist/utils/sort-quotes.d.mts +0 -4
- package/dist/utils/sort-quotes.d.mts.map +0 -1
- package/dist/utils/sort-quotes.mjs.map +0 -1
- package/dist/utils/struct-error.cjs +0 -16
- package/dist/utils/struct-error.cjs.map +0 -1
- package/dist/utils/struct-error.d.cts +0 -11
- package/dist/utils/struct-error.d.cts.map +0 -1
- package/dist/utils/struct-error.d.mts.map +0 -1
- package/dist/utils/struct-error.mjs.map +0 -1
- package/dist/utils/swaps.cjs +0 -73
- package/dist/utils/swaps.cjs.map +0 -1
- package/dist/utils/swaps.d.cts.map +0 -1
- package/dist/utils/swaps.d.mts +0 -37
- package/dist/utils/swaps.d.mts.map +0 -1
- package/dist/utils/swaps.mjs.map +0 -1
- package/dist/utils/trade-utils.cjs +0 -39
- package/dist/utils/trade-utils.cjs.map +0 -1
- package/dist/utils/trade-utils.d.cts.map +0 -1
- package/dist/utils/trade-utils.d.mts +0 -9
- package/dist/utils/trade-utils.d.mts.map +0 -1
- package/dist/utils/trade-utils.mjs.map +0 -1
- package/dist/validators/amount-and-asset.cjs +0 -27
- package/dist/validators/amount-and-asset.cjs.map +0 -1
- package/dist/validators/amount-and-asset.d.cts.map +0 -1
- package/dist/validators/amount-and-asset.d.mts +0 -62
- package/dist/validators/amount-and-asset.d.mts.map +0 -1
- package/dist/validators/amount-and-asset.mjs.map +0 -1
- package/dist/validators/batch-sell.cjs +0 -39
- package/dist/validators/batch-sell.cjs.map +0 -1
- package/dist/validators/batch-sell.d.cts.map +0 -1
- package/dist/validators/batch-sell.d.mts +0 -79
- package/dist/validators/batch-sell.d.mts.map +0 -1
- package/dist/validators/batch-sell.mjs.map +0 -1
- package/dist/validators/bridge-asset.cjs +0 -106
- package/dist/validators/bridge-asset.cjs.map +0 -1
- package/dist/validators/bridge-asset.d.cts +0 -146
- package/dist/validators/bridge-asset.d.cts.map +0 -1
- package/dist/validators/bridge-asset.d.mts.map +0 -1
- package/dist/validators/bridge-asset.mjs.map +0 -1
- package/dist/validators/feature-flags.cjs +0 -110
- package/dist/validators/feature-flags.cjs.map +0 -1
- package/dist/validators/feature-flags.d.cts +0 -264
- package/dist/validators/feature-flags.d.cts.map +0 -1
- package/dist/validators/feature-flags.d.mts.map +0 -1
- package/dist/validators/feature-flags.mjs.map +0 -1
- package/dist/validators/intent.cjs +0 -122
- package/dist/validators/intent.cjs.map +0 -1
- package/dist/validators/intent.d.cts.map +0 -1
- package/dist/validators/intent.d.mts +0 -231
- package/dist/validators/intent.d.mts.map +0 -1
- package/dist/validators/intent.mjs.map +0 -1
- package/dist/validators/number.cjs +0 -8
- package/dist/validators/number.cjs.map +0 -1
- package/dist/validators/number.d.cts.map +0 -1
- package/dist/validators/number.d.mts +0 -4
- package/dist/validators/number.d.mts.map +0 -1
- package/dist/validators/number.mjs.map +0 -1
- package/dist/validators/quote-request.cjs +0 -57
- package/dist/validators/quote-request.cjs.map +0 -1
- package/dist/validators/quote-request.d.cts.map +0 -1
- package/dist/validators/quote-request.d.mts +0 -4
- package/dist/validators/quote-request.d.mts.map +0 -1
- package/dist/validators/quote-request.mjs.map +0 -1
- package/dist/validators/quote-response-v1.cjs +0 -31
- package/dist/validators/quote-response-v1.cjs.map +0 -1
- package/dist/validators/quote-response-v1.d.cts.map +0 -1
- package/dist/validators/quote-response-v1.d.mts +0 -661
- package/dist/validators/quote-response-v1.d.mts.map +0 -1
- package/dist/validators/quote-response-v1.mjs.map +0 -1
- package/dist/validators/quote-response.cjs +0 -129
- package/dist/validators/quote-response.cjs.map +0 -1
- package/dist/validators/quote-response.d.cts +0 -1973
- package/dist/validators/quote-response.d.mts.map +0 -1
- package/dist/validators/quote-response.mjs.map +0 -1
- package/dist/validators/quote-stream-complete.cjs +0 -29
- package/dist/validators/quote-stream-complete.cjs.map +0 -1
- package/dist/validators/quote-stream-complete.d.cts.map +0 -1
- package/dist/validators/quote-stream-complete.d.mts +0 -39
- package/dist/validators/quote-stream-complete.d.mts.map +0 -1
- package/dist/validators/quote-stream-complete.mjs.map +0 -1
- package/dist/validators/quote.cjs +0 -164
- package/dist/validators/quote.cjs.map +0 -1
- package/dist/validators/quote.d.cts.map +0 -1
- package/dist/validators/quote.d.mts +0 -588
- package/dist/validators/quote.d.mts.map +0 -1
- package/dist/validators/quote.mjs.map +0 -1
- package/dist/validators/step.cjs +0 -26
- package/dist/validators/step.cjs.map +0 -1
- package/dist/validators/step.d.cts.map +0 -1
- package/dist/validators/step.d.mts +0 -319
- package/dist/validators/step.d.mts.map +0 -1
- package/dist/validators/step.mjs.map +0 -1
- package/dist/validators/token-feature.cjs +0 -22
- package/dist/validators/token-feature.cjs.map +0 -1
- package/dist/validators/token-feature.d.cts.map +0 -1
- package/dist/validators/token-feature.d.mts +0 -26
- package/dist/validators/token-feature.d.mts.map +0 -1
- package/dist/validators/token-feature.mjs.map +0 -1
- package/dist/validators/trade.cjs +0 -94
- package/dist/validators/trade.cjs.map +0 -1
- package/dist/validators/trade.d.cts +0 -121
- package/dist/validators/trade.d.cts.map +0 -1
- package/dist/validators/trade.d.mts.map +0 -1
- package/dist/validators/trade.mjs.map +0 -1
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isQuoteResponseV2 = exports.validateQuoteResponse = exports.QuoteResponseSchemaV2 = void 0;
|
|
4
|
-
const superstruct_1 = require("@metamask/superstruct");
|
|
5
|
-
const utils_1 = require("@metamask/utils");
|
|
6
|
-
const feature_flags_js_1 = require("./feature-flags.cjs");
|
|
7
|
-
const number_js_1 = require("./number.cjs");
|
|
8
|
-
const quote_js_1 = require("./quote.cjs");
|
|
9
|
-
const trade_js_1 = require("./trade.cjs");
|
|
10
|
-
const CommonQuoteResponseSchema = (0, superstruct_1.type)({
|
|
11
|
-
quoteId: (0, superstruct_1.optional)((0, superstruct_1.string)()),
|
|
12
|
-
quote: quote_js_1.QuoteSchemaV2,
|
|
13
|
-
estimatedProcessingTimeInSeconds: (0, superstruct_1.number)(),
|
|
14
|
-
/**
|
|
15
|
-
* Appended to the quote if there are multiple quote requests in a batch. This
|
|
16
|
-
* indicates which quoteRequest the quote is for
|
|
17
|
-
*/
|
|
18
|
-
quoteRequestIndex: (0, superstruct_1.optional)((0, superstruct_1.number)()),
|
|
19
|
-
/**
|
|
20
|
-
* Appended to the quote response based on the quote requested featureId
|
|
21
|
-
*/
|
|
22
|
-
featureId: (0, superstruct_1.optional)((0, superstruct_1.enums)(Object.values(feature_flags_js_1.FeatureId))),
|
|
23
|
-
/**
|
|
24
|
-
* Appended to the quote response based on the quote request nonEvmFeesInNative flag
|
|
25
|
-
*
|
|
26
|
-
* @deprecated Use network feeData
|
|
27
|
-
*/
|
|
28
|
-
nonEvmFeesInNative: (0, superstruct_1.optional)(number_js_1.FloatStringSchema),
|
|
29
|
-
/**
|
|
30
|
-
* Appended to the quote response based on the quote request l1GasFeesInHexWei flag
|
|
31
|
-
*
|
|
32
|
-
* @deprecated Use network feeData
|
|
33
|
-
*/
|
|
34
|
-
l1GasFeesInHexWei: (0, superstruct_1.optional)(utils_1.StrictHexStruct),
|
|
35
|
-
});
|
|
36
|
-
const EvmQuoteResponseSchema = (0, superstruct_1.intersection)([
|
|
37
|
-
CommonQuoteResponseSchema,
|
|
38
|
-
(0, superstruct_1.type)({
|
|
39
|
-
namespace: (0, superstruct_1.literal)(utils_1.KnownCaipNamespace.Eip155),
|
|
40
|
-
chainId: utils_1.CaipChainIdStruct,
|
|
41
|
-
trade: trade_js_1.TxDataSchema,
|
|
42
|
-
approval: (0, superstruct_1.optional)(trade_js_1.TxDataSchema),
|
|
43
|
-
resetApproval: (0, superstruct_1.optional)(trade_js_1.TxDataSchema),
|
|
44
|
-
}),
|
|
45
|
-
]);
|
|
46
|
-
const TronQuoteResponseSchema = (0, superstruct_1.intersection)([
|
|
47
|
-
CommonQuoteResponseSchema,
|
|
48
|
-
(0, superstruct_1.type)({
|
|
49
|
-
namespace: (0, superstruct_1.literal)(utils_1.KnownCaipNamespace.Tron),
|
|
50
|
-
chainId: utils_1.CaipChainIdStruct,
|
|
51
|
-
trade: trade_js_1.TronTradeDataSchema,
|
|
52
|
-
approval: (0, superstruct_1.optional)(trade_js_1.TronTradeDataSchema),
|
|
53
|
-
}),
|
|
54
|
-
]);
|
|
55
|
-
const SolanaQuoteResponseSchema = (0, superstruct_1.intersection)([
|
|
56
|
-
CommonQuoteResponseSchema,
|
|
57
|
-
(0, superstruct_1.type)({
|
|
58
|
-
namespace: (0, superstruct_1.literal)(utils_1.KnownCaipNamespace.Solana),
|
|
59
|
-
chainId: utils_1.CaipChainIdStruct,
|
|
60
|
-
trade: (0, superstruct_1.string)(),
|
|
61
|
-
approval: (0, superstruct_1.optional)(trade_js_1.TxDataSchema),
|
|
62
|
-
}),
|
|
63
|
-
]);
|
|
64
|
-
const BitcoinQuoteResponseSchema = (0, superstruct_1.intersection)([
|
|
65
|
-
CommonQuoteResponseSchema,
|
|
66
|
-
(0, superstruct_1.type)({
|
|
67
|
-
namespace: (0, superstruct_1.literal)(utils_1.KnownCaipNamespace.Bip122),
|
|
68
|
-
chainId: utils_1.CaipChainIdStruct,
|
|
69
|
-
trade: trade_js_1.BitcoinTradeDataSchema,
|
|
70
|
-
approval: (0, superstruct_1.optional)(trade_js_1.TxDataSchema),
|
|
71
|
-
}),
|
|
72
|
-
]);
|
|
73
|
-
const StellarQuoteResponseSchema = (0, superstruct_1.intersection)([
|
|
74
|
-
CommonQuoteResponseSchema,
|
|
75
|
-
(0, superstruct_1.type)({
|
|
76
|
-
namespace: (0, superstruct_1.literal)(utils_1.KnownCaipNamespace.Stellar),
|
|
77
|
-
chainId: utils_1.CaipChainIdStruct,
|
|
78
|
-
trade: trade_js_1.StellarTradeDataSchema,
|
|
79
|
-
approval: (0, superstruct_1.optional)(trade_js_1.TxDataSchema),
|
|
80
|
-
}),
|
|
81
|
-
]);
|
|
82
|
-
exports.QuoteResponseSchemaV2 = (0, superstruct_1.nullable)((0, superstruct_1.union)([
|
|
83
|
-
EvmQuoteResponseSchema,
|
|
84
|
-
SolanaQuoteResponseSchema,
|
|
85
|
-
TronQuoteResponseSchema,
|
|
86
|
-
BitcoinQuoteResponseSchema,
|
|
87
|
-
StellarQuoteResponseSchema,
|
|
88
|
-
]));
|
|
89
|
-
// This ensures the QuoteResponse type is in sync with the QuoteResponseSchemaV2
|
|
90
|
-
const QuoteResponse = exports.QuoteResponseSchemaV2;
|
|
91
|
-
const NAMESPACE_TO_TRADE_SCHEMA = {
|
|
92
|
-
[utils_1.KnownCaipNamespace.Eip155]: EvmQuoteResponseSchema,
|
|
93
|
-
[utils_1.KnownCaipNamespace.Tron]: TronQuoteResponseSchema,
|
|
94
|
-
[utils_1.KnownCaipNamespace.Solana]: SolanaQuoteResponseSchema,
|
|
95
|
-
[utils_1.KnownCaipNamespace.Bip122]: BitcoinQuoteResponseSchema,
|
|
96
|
-
[utils_1.KnownCaipNamespace.Stellar]: StellarQuoteResponseSchema,
|
|
97
|
-
};
|
|
98
|
-
const validateQuoteResponse = (quoteResponse) => {
|
|
99
|
-
// Validate common fields first
|
|
100
|
-
(0, superstruct_1.assert)(quoteResponse, CommonQuoteResponseSchema);
|
|
101
|
-
// Extract the namespace and chainId from the src asset
|
|
102
|
-
const { chain: { namespace: namespaceString }, chainId, } = (0, utils_1.parseCaipAssetType)(quoteResponse.quote.src.asset.assetId);
|
|
103
|
-
const namespace = namespaceString;
|
|
104
|
-
if (!NAMESPACE_TO_TRADE_SCHEMA[namespace]) {
|
|
105
|
-
return false;
|
|
106
|
-
}
|
|
107
|
-
// Validate the trade and approval fields based on the src chain's namespace
|
|
108
|
-
(0, superstruct_1.assert)({
|
|
109
|
-
...quoteResponse,
|
|
110
|
-
namespace,
|
|
111
|
-
chainId,
|
|
112
|
-
}, NAMESPACE_TO_TRADE_SCHEMA[namespace]);
|
|
113
|
-
return true;
|
|
114
|
-
};
|
|
115
|
-
exports.validateQuoteResponse = validateQuoteResponse;
|
|
116
|
-
/**
|
|
117
|
-
* Shallow check for the presence of the `src` property
|
|
118
|
-
*
|
|
119
|
-
* @param quote - The quote to check
|
|
120
|
-
* @returns True if the quote is a V2 quote, false otherwise
|
|
121
|
-
*/
|
|
122
|
-
const isQuoteResponseV2 = (quote) => {
|
|
123
|
-
if (!quote?.quote) {
|
|
124
|
-
return false;
|
|
125
|
-
}
|
|
126
|
-
return Object.prototype.hasOwnProperty.call(quote.quote, 'src');
|
|
127
|
-
};
|
|
128
|
-
exports.isQuoteResponseV2 = isQuoteResponseV2;
|
|
129
|
-
//# sourceMappingURL=quote-response.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quote-response.cjs","sourceRoot":"","sources":["../../src/validators/quote-response.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n assert,\n Infer,\n number,\n optional,\n string,\n type,\n union,\n intersection,\n Describe,\n nullable,\n enums,\n literal,\n AnyStruct,\n} from '@metamask/superstruct';\nimport {\n CaipChainId,\n CaipChainIdStruct,\n KnownCaipNamespace,\n parseCaipAssetType,\n StrictHexStruct,\n} from '@metamask/utils';\n\nimport { FeatureId } from './feature-flags.js';\nimport { FloatStringSchema } from './number.js';\nimport { QuoteSchemaV2 } from './quote.js';\nimport {\n BitcoinTradeData,\n BitcoinTradeDataSchema,\n StellarTradeData,\n StellarTradeDataSchema,\n TronTradeData,\n TronTradeDataSchema,\n TxData,\n TxDataSchema,\n} from './trade.js';\n\nconst CommonQuoteResponseSchema = type({\n quoteId: optional(string()),\n quote: QuoteSchemaV2,\n estimatedProcessingTimeInSeconds: number(),\n /**\n * Appended to the quote if there are multiple quote requests in a batch. This\n * indicates which quoteRequest the quote is for\n */\n quoteRequestIndex: optional(number()),\n /**\n * Appended to the quote response based on the quote requested featureId\n */\n featureId: optional(enums(Object.values(FeatureId))),\n /**\n * Appended to the quote response based on the quote request nonEvmFeesInNative flag\n *\n * @deprecated Use network feeData\n */\n nonEvmFeesInNative: optional(FloatStringSchema),\n /**\n * Appended to the quote response based on the quote request l1GasFeesInHexWei flag\n *\n * @deprecated Use network feeData\n */\n l1GasFeesInHexWei: optional(StrictHexStruct),\n});\n\nconst EvmQuoteResponseSchema = intersection([\n CommonQuoteResponseSchema,\n type({\n namespace: literal(KnownCaipNamespace.Eip155),\n chainId: CaipChainIdStruct,\n trade: TxDataSchema,\n approval: optional(TxDataSchema),\n resetApproval: optional(TxDataSchema),\n }),\n]);\n\nconst TronQuoteResponseSchema = intersection([\n CommonQuoteResponseSchema,\n type({\n namespace: literal(KnownCaipNamespace.Tron),\n chainId: CaipChainIdStruct,\n trade: TronTradeDataSchema,\n approval: optional(TronTradeDataSchema),\n }),\n]);\n\nconst SolanaQuoteResponseSchema = intersection([\n CommonQuoteResponseSchema,\n type({\n namespace: literal(KnownCaipNamespace.Solana),\n chainId: CaipChainIdStruct,\n trade: string(),\n approval: optional(TxDataSchema),\n }),\n]);\n\nconst BitcoinQuoteResponseSchema = intersection([\n CommonQuoteResponseSchema,\n type({\n namespace: literal(KnownCaipNamespace.Bip122),\n chainId: CaipChainIdStruct,\n trade: BitcoinTradeDataSchema,\n approval: optional(TxDataSchema),\n }),\n]);\n\nconst StellarQuoteResponseSchema = intersection([\n CommonQuoteResponseSchema,\n type({\n namespace: literal(KnownCaipNamespace.Stellar),\n chainId: CaipChainIdStruct,\n trade: StellarTradeDataSchema,\n approval: optional(TxDataSchema),\n }),\n]);\n\nexport const QuoteResponseSchemaV2 = nullable(\n union([\n EvmQuoteResponseSchema,\n SolanaQuoteResponseSchema,\n TronQuoteResponseSchema,\n BitcoinQuoteResponseSchema,\n StellarQuoteResponseSchema,\n ]),\n);\n\n/**\n * This is the V2 QuoteResponse type, including metadata calculated after quote fetch\n */\nexport type QuoteResponse = Omit<\n NonNullable<Infer<typeof QuoteResponseSchemaV2>>,\n 'trade' | 'approval' | 'resetApproval'\n> &\n (\n | {\n namespace: KnownCaipNamespace.Eip155;\n chainId: CaipChainId;\n trade: TxData & {\n data: string;\n };\n approval?: TxData;\n /**\n * Appended to the quote response based on the quote request resetApproval flag\n * If defined, the quote's total network fee will include the reset approval's gas limit.\n */\n resetApproval?: TxData;\n }\n | {\n namespace: KnownCaipNamespace.Solana;\n chainId: CaipChainId;\n trade: string;\n approval?: TxData;\n }\n | {\n namespace: KnownCaipNamespace.Tron;\n chainId: CaipChainId;\n trade: TronTradeData & {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n raw_data_hex: string;\n };\n approval?: TronTradeData;\n }\n | {\n namespace: KnownCaipNamespace.Bip122;\n chainId: CaipChainId;\n trade: BitcoinTradeData;\n approval?: TxData;\n }\n | {\n namespace: KnownCaipNamespace.Stellar;\n chainId: CaipChainId;\n trade: StellarTradeData;\n approval?: TxData;\n }\n );\n// This ensures the QuoteResponse type is in sync with the QuoteResponseSchemaV2\nconst QuoteResponse: Describe<QuoteResponse | null> = QuoteResponseSchemaV2;\n\nconst NAMESPACE_TO_TRADE_SCHEMA: Record<QuoteResponse['namespace'], AnyStruct> =\n {\n [KnownCaipNamespace.Eip155]: EvmQuoteResponseSchema,\n [KnownCaipNamespace.Tron]: TronQuoteResponseSchema,\n [KnownCaipNamespace.Solana]: SolanaQuoteResponseSchema,\n [KnownCaipNamespace.Bip122]: BitcoinQuoteResponseSchema,\n [KnownCaipNamespace.Stellar]: StellarQuoteResponseSchema,\n };\n\nexport const validateQuoteResponse = (\n quoteResponse: unknown,\n): quoteResponse is QuoteResponse => {\n // Validate common fields first\n assert(quoteResponse, CommonQuoteResponseSchema);\n\n // Extract the namespace and chainId from the src asset\n const {\n chain: { namespace: namespaceString },\n chainId,\n } = parseCaipAssetType(quoteResponse.quote.src.asset.assetId);\n const namespace = namespaceString as QuoteResponse['namespace'];\n\n if (!NAMESPACE_TO_TRADE_SCHEMA[namespace]) {\n return false;\n }\n\n // Validate the trade and approval fields based on the src chain's namespace\n assert(\n {\n ...quoteResponse,\n namespace,\n chainId,\n },\n NAMESPACE_TO_TRADE_SCHEMA[namespace],\n );\n return true;\n};\n\n/**\n * Shallow check for the presence of the `src` property\n *\n * @param quote - The quote to check\n * @returns True if the quote is a V2 quote, false otherwise\n */\nexport const isQuoteResponseV2 = (\n quote: { quote?: object } | null | undefined,\n): quote is QuoteResponse => {\n if (!quote?.quote) {\n return false;\n }\n return Object.prototype.hasOwnProperty.call(quote.quote, 'src');\n};\n"]}
|