@metamask-previews/bridge-controller 80.1.0-preview-36bc195a7 → 80.1.0-preview-e0510042f
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 +0 -4
- package/dist/selectors.cjs +1 -4
- package/dist/selectors.cjs.map +1 -1
- package/dist/selectors.d.cts +4051 -379
- package/dist/selectors.d.cts.map +1 -1
- package/dist/selectors.d.mts +4051 -379
- package/dist/selectors.d.mts.map +1 -1
- package/dist/selectors.mjs +1 -4
- package/dist/selectors.mjs.map +1 -1
- package/dist/utils/quote-metadata/to-currency-values.cjs +2 -6
- package/dist/utils/quote-metadata/to-currency-values.cjs.map +1 -1
- package/dist/utils/quote-metadata/to-currency-values.d.cts.map +1 -1
- package/dist/utils/quote-metadata/to-currency-values.d.mts.map +1 -1
- package/dist/utils/quote-metadata/to-currency-values.mjs +2 -6
- package/dist/utils/quote-metadata/to-currency-values.mjs.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.cjs +2 -3
- package/dist/utils/quote-metadata/to-quote-metadata-v1.cjs.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.cts.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.d.mts.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v1.mjs +2 -3
- package/dist/utils/quote-metadata/to-quote-metadata-v1.mjs.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.cjs +6 -5
- package/dist/utils/quote-metadata/to-quote-metadata-v2.cjs.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.cts.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.d.mts.map +1 -1
- package/dist/utils/quote-metadata/to-quote-metadata-v2.mjs +6 -5
- package/dist/utils/quote-metadata/to-quote-metadata-v2.mjs.map +1 -1
- package/dist/validators/quote-response.d.cts +0 -20
- package/dist/validators/quote-response.d.cts.map +1 -1
- package/dist/validators/quote-response.d.mts +0 -20
- package/dist/validators/quote-response.d.mts.map +1 -1
- package/dist/validators/quote.cjs +0 -1
- package/dist/validators/quote.cjs.map +1 -1
- package/dist/validators/quote.d.cts +0 -4
- package/dist/validators/quote.d.cts.map +1 -1
- package/dist/validators/quote.d.mts +0 -4
- package/dist/validators/quote.d.mts.map +1 -1
- package/dist/validators/quote.mjs +0 -1
- package/dist/validators/quote.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-quote-metadata-v2.d.cts","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAuB;AAGlD,OAAO,KAAK,EAAE,aAAa,EAAE,4CAA2C;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAqB,oBAAmB;AAgBnE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,kBACb,aAAa,oBACV,YAAY,aAAa,CAAC,KAC3C,YAAY,aAAa,
|
|
1
|
+
{"version":3,"file":"to-quote-metadata-v2.d.cts","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAuB;AAGlD,OAAO,KAAK,EAAE,aAAa,EAAE,4CAA2C;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAqB,oBAAmB;AAgBnE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,kBACb,aAAa,oBACV,YAAY,aAAa,CAAC,KAC3C,YAAY,aAAa,CA6E3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-quote-metadata-v2.d.mts","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAuB;AAGlD,OAAO,KAAK,EAAE,aAAa,EAAE,4CAA2C;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAqB,oBAAmB;AAgBnE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,kBACb,aAAa,oBACV,YAAY,aAAa,CAAC,KAC3C,YAAY,aAAa,
|
|
1
|
+
{"version":3,"file":"to-quote-metadata-v2.d.mts","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAuB;AAGlD,OAAO,KAAK,EAAE,aAAa,EAAE,4CAA2C;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAqB,oBAAmB;AAgBnE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,kBACb,aAAa,oBACV,YAAY,aAAa,CAAC,KAC3C,YAAY,aAAa,CA6E3B,CAAC"}
|
|
@@ -30,6 +30,10 @@ export const toQuoteMetadataV2 = (quoteMetadata, quoteResponseV2) => {
|
|
|
30
30
|
? toBridgeAssetV2(getNativeAssetForChainId(chainId))
|
|
31
31
|
: undefined;
|
|
32
32
|
const txFeeAsset = quoteResponseV2?.quote?.feeData?.txFee?.[0]?.asset;
|
|
33
|
+
const priceImpactToUse = {
|
|
34
|
+
usd: priceImpact?.usd ?? cost?.usd,
|
|
35
|
+
valueInCurrency: priceImpact?.valueInCurrency ?? cost?.valueInCurrency,
|
|
36
|
+
};
|
|
33
37
|
const networkFeeToUse = gasFee?.total ?? totalNetworkFee;
|
|
34
38
|
return {
|
|
35
39
|
...rest,
|
|
@@ -62,15 +66,12 @@ export const toQuoteMetadataV2 = (quoteMetadata, quoteResponseV2) => {
|
|
|
62
66
|
}),
|
|
63
67
|
},
|
|
64
68
|
priceData: {
|
|
65
|
-
...includeIfTruthy(
|
|
66
|
-
priceImpact,
|
|
69
|
+
...includeIfTruthy(priceImpactToUse, {
|
|
70
|
+
priceImpact: priceImpactToUse,
|
|
67
71
|
}),
|
|
68
72
|
...includeIfTruthy(adjustedReturn, {
|
|
69
73
|
adjustedReturn,
|
|
70
74
|
}),
|
|
71
|
-
...includeIfTruthy(cost, {
|
|
72
|
-
cost,
|
|
73
|
-
}),
|
|
74
75
|
swapRate,
|
|
75
76
|
},
|
|
76
77
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-quote-metadata-v2.mjs","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,wBAAwB;AAErD,OAAO,EAAE,eAAe,EAAE,mDAAkD;AAK5E,OAAO,EAAE,wBAAwB,EAAE,sBAAqB;AACxD,OAAO,EAAE,qBAAqB,EAAE,iCAAgC;AAChE,OAAO,EAAE,eAAe,EAAE,gCAA+B;AAGzD,MAAM,gBAAgB,GAAG,CACvB,KAAkC,EAClC,QAAqC,EACrC,WAA0C,EACZ,EAAE;IAChC,OAAO;QACL,MAAM,EAAE,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC;QAChE,gBAAgB,EAAE,QAAQ,EAAE,MAAM;QAClC,eAAe,EAAE,QAAQ,EAAE,eAAe;QAC1C,GAAG,EAAE,QAAQ,EAAE,GAAG;QAClB,GAAG,WAAW;KACf,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,aAA4B,EAC5B,eAA4C,EAChB,EAAE;IAC9B,MAAM,EACJ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,MAAM,EACN,cAAc,EACd,IAAI,EACJ,cAAc,EACd,UAAU,EACV,WAAW,EACX,GAAG,IAAI,EACR,GAAG,aAAa,CAAC;IAElB,MAAM,QAAQ,GAAG,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC;IACpD,MAAM,SAAS,GAAG,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEtD,MAAM,OAAO,GAAG,QAAQ,EAAE,OAAO;QAC/B,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO;QAC/C,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,WAAW,GAAG,OAAO;QACzB,CAAC,CAAC,eAAe,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,UAAU,GAAG,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAEtE,MAAM,eAAe,GAAG,MAAM,EAAE,KAAK,IAAI,eAAe,CAAC;IAEzD,OAAO;QACL,GAAG,IAAI;QACP,KAAK,EAAE;YACL,GAAG,EAAE,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC;YAC3C,IAAI,EAAE;gBACJ,GAAG,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC;gBAC7C,SAAS,EAAE,qBAAqB,CAC9B,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,QAAQ,CACpB;gBACD,mBAAmB,EAAE,gBAAgB,EAAE,MAAM;gBAC7C,YAAY,EAAE,gBAAgB,EAAE,GAAG;gBACnC,wBAAwB,EAAE,gBAAgB,EAAE,eAAe;aAC5D;YACD,OAAO,EAAE;gBACP,GAAG,eAAe,CAAC,eAAe,EAAE;oBAClC,OAAO,EAAE;wBACP,gBAAgB,CAAC,WAAW,EAAE,eAAe,EAAE;4BAC7C,KAAK,EAAE,WAAW;yBACnB,CAAC;qBACH;iBACF,CAAC;gBACF,GAAG,eAAe,CAAC,UAAU,EAAE;oBAC7B,OAAO,EAAE;wBACP,gBAAgB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;qBAClE;iBACF,CAAC;gBACF,GAAG,eAAe,CAAC,cAAc,EAAE;oBACjC,KAAK,EAAE;wBACL,gBAAgB,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;qBACpE;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,GAAG,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"to-quote-metadata-v2.mjs","sourceRoot":"","sources":["../../../src/utils/quote-metadata/to-quote-metadata-v2.ts"],"names":[],"mappings":"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","sourcesContent":["import { parseCaipAssetType } from '@metamask/utils';\n\nimport { toBridgeAssetV2 } from '../../coercers/quote-response-v1-to-v2.js';\nimport type { DeepPartial } from '../../types.js';\nimport type { AmountsAndAsset } from '../../validators/amount-and-asset.js';\nimport type { BridgeAssetV2 } from '../../validators/bridge-asset.js';\nimport type { QuoteResponse } from '../../validators/quote-response.js';\nimport { getNativeAssetForChainId } from '../bridge.js';\nimport { calcAtomicTokenAmount } from '../number-formatters.js';\nimport { includeIfTruthy } from './include-if-truthy.js';\nimport type { QuoteMetadata, TokenAmountValues } from './types.js';\n\nconst toAmountAndAsset = (\n asset?: DeepPartial<BridgeAssetV2>,\n metadata?: Partial<TokenAmountValues>,\n extraFields?: DeepPartial<AmountsAndAsset>,\n): DeepPartial<AmountsAndAsset> => {\n return {\n amount: calcAtomicTokenAmount(metadata?.amount, asset?.decimals),\n normalizedAmount: metadata?.amount,\n valueInCurrency: metadata?.valueInCurrency,\n usd: metadata?.usd,\n ...extraFields,\n };\n};\n\n/**\n * Converts a {@link QuoteMetadata} to a partial {@link QuoteResponse} containing only metadata\n *\n * @param quoteMetadata - The {@link QuoteMetadata} to convert\n * @param quoteResponseV2 - The {@link QuoteResponse} to use for token data\n * @returns The {@link DeepPartial<QuoteResponse>}\n */\nexport const toQuoteMetadataV2 = (\n quoteMetadata: QuoteMetadata,\n quoteResponseV2?: DeepPartial<QuoteResponse>,\n): DeepPartial<QuoteResponse> => {\n const {\n sentAmount,\n toTokenAmount,\n minToTokenAmount,\n swapRate,\n totalNetworkFee,\n gasFee,\n adjustedReturn,\n cost,\n includedTxFees,\n relayerFee,\n priceImpact,\n ...rest\n } = quoteMetadata;\n\n const srcAsset = quoteResponseV2?.quote?.src?.asset;\n const destAsset = quoteResponseV2?.quote?.dest?.asset;\n\n const chainId = srcAsset?.assetId\n ? parseCaipAssetType(srcAsset.assetId)?.chainId\n : undefined;\n const nativeAsset = chainId\n ? toBridgeAssetV2(getNativeAssetForChainId(chainId))\n : undefined;\n const txFeeAsset = quoteResponseV2?.quote?.feeData?.txFee?.[0]?.asset;\n\n const priceImpactToUse = {\n usd: priceImpact?.usd ?? cost?.usd,\n valueInCurrency: priceImpact?.valueInCurrency ?? cost?.valueInCurrency,\n };\n const networkFeeToUse = gasFee?.total ?? totalNetworkFee;\n\n return {\n ...rest,\n quote: {\n src: toAmountAndAsset(srcAsset, sentAmount),\n dest: {\n ...toAmountAndAsset(destAsset, toTokenAmount),\n minAmount: calcAtomicTokenAmount(\n minToTokenAmount?.amount,\n destAsset?.decimals,\n ),\n minAmountNormalized: minToTokenAmount?.amount,\n minAmountUsd: minToTokenAmount?.usd,\n minAmountValueInCurrency: minToTokenAmount?.valueInCurrency,\n },\n feeData: {\n ...includeIfTruthy(networkFeeToUse, {\n network: [\n toAmountAndAsset(nativeAsset, networkFeeToUse, {\n asset: nativeAsset,\n }),\n ],\n }),\n ...includeIfTruthy(relayerFee, {\n relayer: [\n toAmountAndAsset(nativeAsset, relayerFee, { asset: nativeAsset }),\n ],\n }),\n ...includeIfTruthy(includedTxFees, {\n txFee: [\n toAmountAndAsset(txFeeAsset, includedTxFees, { asset: txFeeAsset }),\n ],\n }),\n },\n priceData: {\n ...includeIfTruthy(priceImpactToUse, {\n priceImpact: priceImpactToUse,\n }),\n ...includeIfTruthy(adjustedReturn, {\n adjustedReturn,\n }),\n swapRate,\n },\n },\n };\n};\n"]}
|
|
@@ -276,10 +276,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
276
276
|
usd?: string | undefined;
|
|
277
277
|
valueInCurrency?: string | undefined;
|
|
278
278
|
} | undefined;
|
|
279
|
-
cost?: {
|
|
280
|
-
usd?: string | undefined;
|
|
281
|
-
valueInCurrency?: string | undefined;
|
|
282
|
-
} | undefined;
|
|
283
279
|
} | undefined;
|
|
284
280
|
steps?: {
|
|
285
281
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -674,10 +670,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
674
670
|
usd?: string | undefined;
|
|
675
671
|
valueInCurrency?: string | undefined;
|
|
676
672
|
} | undefined;
|
|
677
|
-
cost?: {
|
|
678
|
-
usd?: string | undefined;
|
|
679
|
-
valueInCurrency?: string | undefined;
|
|
680
|
-
} | undefined;
|
|
681
673
|
} | undefined;
|
|
682
674
|
steps?: {
|
|
683
675
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -1055,10 +1047,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1055
1047
|
usd?: string | undefined;
|
|
1056
1048
|
valueInCurrency?: string | undefined;
|
|
1057
1049
|
} | undefined;
|
|
1058
|
-
cost?: {
|
|
1059
|
-
usd?: string | undefined;
|
|
1060
|
-
valueInCurrency?: string | undefined;
|
|
1061
|
-
} | undefined;
|
|
1062
1050
|
} | undefined;
|
|
1063
1051
|
steps?: {
|
|
1064
1052
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -1446,10 +1434,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1446
1434
|
usd?: string | undefined;
|
|
1447
1435
|
valueInCurrency?: string | undefined;
|
|
1448
1436
|
} | undefined;
|
|
1449
|
-
cost?: {
|
|
1450
|
-
usd?: string | undefined;
|
|
1451
|
-
valueInCurrency?: string | undefined;
|
|
1452
|
-
} | undefined;
|
|
1453
1437
|
} | undefined;
|
|
1454
1438
|
steps?: {
|
|
1455
1439
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -1830,10 +1814,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1830
1814
|
usd?: string | undefined;
|
|
1831
1815
|
valueInCurrency?: string | undefined;
|
|
1832
1816
|
} | undefined;
|
|
1833
|
-
cost?: {
|
|
1834
|
-
usd?: string | undefined;
|
|
1835
|
-
valueInCurrency?: string | undefined;
|
|
1836
|
-
} | undefined;
|
|
1837
1817
|
} | undefined;
|
|
1838
1818
|
steps?: {
|
|
1839
1819
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote-response.d.cts","sourceRoot":"","sources":["../../src/validators/quote-response.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAYN,8BAA8B;AAC/B,OAAO,EACL,WAAW,EAEX,kBAAkB,EAGnB,wBAAwB;AAEzB,OAAO,EAAE,SAAS,EAAE,4BAA2B;AAG/C,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAEhB,aAAa,EAEb,MAAM,EAEP,oBAAmB;AAgFpB,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"quote-response.d.cts","sourceRoot":"","sources":["../../src/validators/quote-response.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAYN,8BAA8B;AAC/B,OAAO,EACL,WAAW,EAEX,kBAAkB,EAGnB,wBAAwB;AAEzB,OAAO,EAAE,SAAS,EAAE,4BAA2B;AAG/C,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAEhB,aAAa,EAEb,MAAM,EAEP,oBAAmB;AAgFpB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAQjC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC,EAChD,OAAO,GAAG,UAAU,GAAG,eAAe,CACvC,GACC,CACI;IACE,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG;QACd,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GACD;IACE,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACD;IACE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,aAAa,GAAG;QAErB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B,GACD;IACE,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACD;IACE,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC;IACtC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CACJ,CAAC;AAaJ,eAAO,MAAM,qBAAqB,kBACjB,OAAO,mCA0BvB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;+CAO7B,CAAC"}
|
|
@@ -276,10 +276,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
276
276
|
usd?: string | undefined;
|
|
277
277
|
valueInCurrency?: string | undefined;
|
|
278
278
|
} | undefined;
|
|
279
|
-
cost?: {
|
|
280
|
-
usd?: string | undefined;
|
|
281
|
-
valueInCurrency?: string | undefined;
|
|
282
|
-
} | undefined;
|
|
283
279
|
} | undefined;
|
|
284
280
|
steps?: {
|
|
285
281
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -674,10 +670,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
674
670
|
usd?: string | undefined;
|
|
675
671
|
valueInCurrency?: string | undefined;
|
|
676
672
|
} | undefined;
|
|
677
|
-
cost?: {
|
|
678
|
-
usd?: string | undefined;
|
|
679
|
-
valueInCurrency?: string | undefined;
|
|
680
|
-
} | undefined;
|
|
681
673
|
} | undefined;
|
|
682
674
|
steps?: {
|
|
683
675
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -1055,10 +1047,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1055
1047
|
usd?: string | undefined;
|
|
1056
1048
|
valueInCurrency?: string | undefined;
|
|
1057
1049
|
} | undefined;
|
|
1058
|
-
cost?: {
|
|
1059
|
-
usd?: string | undefined;
|
|
1060
|
-
valueInCurrency?: string | undefined;
|
|
1061
|
-
} | undefined;
|
|
1062
1050
|
} | undefined;
|
|
1063
1051
|
steps?: {
|
|
1064
1052
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -1446,10 +1434,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1446
1434
|
usd?: string | undefined;
|
|
1447
1435
|
valueInCurrency?: string | undefined;
|
|
1448
1436
|
} | undefined;
|
|
1449
|
-
cost?: {
|
|
1450
|
-
usd?: string | undefined;
|
|
1451
|
-
valueInCurrency?: string | undefined;
|
|
1452
|
-
} | undefined;
|
|
1453
1437
|
} | undefined;
|
|
1454
1438
|
steps?: {
|
|
1455
1439
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -1830,10 +1814,6 @@ export declare const QuoteResponseSchemaV2: import("@metamask/superstruct").Stru
|
|
|
1830
1814
|
usd?: string | undefined;
|
|
1831
1815
|
valueInCurrency?: string | undefined;
|
|
1832
1816
|
} | undefined;
|
|
1833
|
-
cost?: {
|
|
1834
|
-
usd?: string | undefined;
|
|
1835
|
-
valueInCurrency?: string | undefined;
|
|
1836
|
-
} | undefined;
|
|
1837
1817
|
} | undefined;
|
|
1838
1818
|
steps?: {
|
|
1839
1819
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote-response.d.mts","sourceRoot":"","sources":["../../src/validators/quote-response.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAYN,8BAA8B;AAC/B,OAAO,EACL,WAAW,EAEX,kBAAkB,EAGnB,wBAAwB;AAEzB,OAAO,EAAE,SAAS,EAAE,4BAA2B;AAG/C,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAEhB,aAAa,EAEb,MAAM,EAEP,oBAAmB;AAgFpB,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"quote-response.d.mts","sourceRoot":"","sources":["../../src/validators/quote-response.ts"],"names":[],"mappings":"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"}
|
|
@@ -129,7 +129,6 @@ exports.QuoteSchemaV2 = (0, superstruct_1.intersection)([
|
|
|
129
129
|
'usd',
|
|
130
130
|
'valueInCurrency',
|
|
131
131
|
]),
|
|
132
|
-
cost: (0, superstruct_1.pick)(amount_and_asset_js_1.AmountsAndAssetSchema, ['usd', 'valueInCurrency']),
|
|
133
132
|
}))),
|
|
134
133
|
feeData: (0, superstruct_1.type)({
|
|
135
134
|
[FeeType.METABRIDGE]: (0, superstruct_1.array)((0, superstruct_1.intersection)([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote.cjs","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type,\n optional,\n boolean,\n intersection,\n string,\n number,\n array,\n nullable,\n partial,\n pick,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { AmountsAndAssetSchema } from './amount-and-asset.js';\nimport { ChainIdSchema, BridgeAssetSchema } from './bridge-asset.js';\nimport { IntentSchema } from './intent.js';\nimport {\n TruthyDigitStringSchema,\n PositiveNumberStringSchema,\n FloatStringSchema,\n} from './number.js';\nimport { RefuelDataSchema, StepSchema, StepSchemaV2 } from './step.js';\n\nexport enum FeeType {\n METABRIDGE = 'metabridge',\n REFUEL = 'refuel',\n // eslint-disable-next-line @typescript-eslint/naming-convention\n TX_FEE = 'txFee',\n NETWORK = 'network',\n RELAYER = 'relayer',\n}\n\nexport enum DiscountType {\n VIP = 'vip',\n PROMO = 'promo',\n DAO = 'dao',\n}\n\nexport const FeeDataSchema = type({\n amount: TruthyDigitStringSchema,\n asset: BridgeAssetSchema,\n discountType: optional(nullable(string())),\n});\n\nexport const TxFeeGasLimitsSchema = type({\n maxFeePerGas: PositiveNumberStringSchema,\n maxPriorityFeePerGas: PositiveNumberStringSchema,\n});\n\nexport const GaslessPropertiesSchema = type({\n gasIncluded: optional(boolean()),\n /**\n * Whether the quote can use EIP-7702 delegated gasless execution\n */\n gasIncluded7702: optional(boolean()),\n /**\n * A third party sponsors the gas. If true, then gasIncluded7702 is also true.\n */\n gasSponsored: optional(boolean()),\n});\n\nexport const QuoteSchema = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n srcChainId: ChainIdSchema,\n srcAsset: BridgeAssetSchema,\n /**\n * The amount sent, in atomic amount: amount sent - fees\n * Some tokens have a fee of 0, so sometimes it's equal to amount sent\n */\n srcTokenAmount: string(),\n destChainId: ChainIdSchema,\n destAsset: BridgeAssetSchema,\n /**\n * The amount received, in atomic amount\n */\n destTokenAmount: string(),\n /**\n * The minimum amount that will be received, in atomic amount\n */\n minDestTokenAmount: optional(string()),\n feeData: type({\n [FeeType.METABRIDGE]: intersection([\n FeeDataSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n }),\n ]),\n /**\n * This is the fee for the swap transaction taken from either the\n * src or dest token if the quote has gas fees included or \"gasless\"\n */\n [FeeType.TX_FEE]: optional(\n intersection([FeeDataSchema, TxFeeGasLimitsSchema]),\n ),\n }),\n bridgeId: string(),\n bridges: array(string()),\n // TODO require this after v2 migration\n aggregator: optional(string()),\n steps: array(StepSchema),\n refuel: optional(RefuelDataSchema),\n priceData: optional(\n type({\n totalFromAmountUsd: optional(string()),\n totalToAmountUsd: optional(string()),\n priceImpact: optional(string()),\n totalFeeAmountUsd: optional(string()),\n }),\n ),\n intent: optional(IntentSchema),\n walletAddress: optional(string()),\n destWalletAddress: optional(string()),\n slippage: optional(number()),\n // TODO require this after v2 migration\n protocols: optional(array(string())),\n }),\n]);\n\nexport type Quote = Infer<typeof QuoteSchema>;\n\nexport const QuoteSchemaV2 = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n src: intersection([\n AmountsAndAssetSchema,\n type({\n walletAddress: optional(string()),\n }),\n ]),\n dest: intersection([\n AmountsAndAssetSchema,\n type({\n minAmount: optional(string()),\n minAmountUsd: optional(string()),\n minAmountValueInCurrency: optional(string()),\n minAmountNormalized: optional(string()),\n walletAddress: optional(string()),\n }),\n ]),\n priceData: optional(\n partial(\n type({\n swapRate: FloatStringSchema,\n priceImpact: intersection([\n type({\n amount: optional(FloatStringSchema),\n }),\n pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n ]),\n adjustedReturn: pick(AmountsAndAssetSchema, [\n 'usd',\n 'valueInCurrency',\n ]),\n cost: pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n }),\n ),\n ),\n feeData: type({\n [FeeType.METABRIDGE]: array(\n intersection([\n AmountsAndAssetSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n discountType: optional(nullable(string())),\n }),\n ]),\n ),\n [FeeType.REFUEL]: optional(array(AmountsAndAssetSchema)),\n /**\n * The tx fees included in the quote for gasless execution\n */\n [FeeType.TX_FEE]: optional(\n array(intersection([AmountsAndAssetSchema, TxFeeGasLimitsSchema])),\n ),\n /**\n * The gas fees for the quote, excluding any provider or relayer fees\n */\n [FeeType.NETWORK]: optional(array(AmountsAndAssetSchema)),\n /**\n * The relayer or provider fees for the quote,\n */\n [FeeType.RELAYER]: optional(array(AmountsAndAssetSchema)),\n }),\n aggregator: string(),\n protocols: array(string()),\n steps: optional(array(StepSchemaV2)),\n refuel: optional(StepSchema),\n intent: optional(IntentSchema),\n slippage: optional(number()),\n }),\n]);\n"]}
|
|
1
|
+
{"version":3,"file":"quote.cjs","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type,\n optional,\n boolean,\n intersection,\n string,\n number,\n array,\n nullable,\n partial,\n pick,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { AmountsAndAssetSchema } from './amount-and-asset.js';\nimport { ChainIdSchema, BridgeAssetSchema } from './bridge-asset.js';\nimport { IntentSchema } from './intent.js';\nimport {\n TruthyDigitStringSchema,\n PositiveNumberStringSchema,\n FloatStringSchema,\n} from './number.js';\nimport { RefuelDataSchema, StepSchema, StepSchemaV2 } from './step.js';\n\nexport enum FeeType {\n METABRIDGE = 'metabridge',\n REFUEL = 'refuel',\n // eslint-disable-next-line @typescript-eslint/naming-convention\n TX_FEE = 'txFee',\n NETWORK = 'network',\n RELAYER = 'relayer',\n}\n\nexport enum DiscountType {\n VIP = 'vip',\n PROMO = 'promo',\n DAO = 'dao',\n}\n\nexport const FeeDataSchema = type({\n amount: TruthyDigitStringSchema,\n asset: BridgeAssetSchema,\n discountType: optional(nullable(string())),\n});\n\nexport const TxFeeGasLimitsSchema = type({\n maxFeePerGas: PositiveNumberStringSchema,\n maxPriorityFeePerGas: PositiveNumberStringSchema,\n});\n\nexport const GaslessPropertiesSchema = type({\n gasIncluded: optional(boolean()),\n /**\n * Whether the quote can use EIP-7702 delegated gasless execution\n */\n gasIncluded7702: optional(boolean()),\n /**\n * A third party sponsors the gas. If true, then gasIncluded7702 is also true.\n */\n gasSponsored: optional(boolean()),\n});\n\nexport const QuoteSchema = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n srcChainId: ChainIdSchema,\n srcAsset: BridgeAssetSchema,\n /**\n * The amount sent, in atomic amount: amount sent - fees\n * Some tokens have a fee of 0, so sometimes it's equal to amount sent\n */\n srcTokenAmount: string(),\n destChainId: ChainIdSchema,\n destAsset: BridgeAssetSchema,\n /**\n * The amount received, in atomic amount\n */\n destTokenAmount: string(),\n /**\n * The minimum amount that will be received, in atomic amount\n */\n minDestTokenAmount: optional(string()),\n feeData: type({\n [FeeType.METABRIDGE]: intersection([\n FeeDataSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n }),\n ]),\n /**\n * This is the fee for the swap transaction taken from either the\n * src or dest token if the quote has gas fees included or \"gasless\"\n */\n [FeeType.TX_FEE]: optional(\n intersection([FeeDataSchema, TxFeeGasLimitsSchema]),\n ),\n }),\n bridgeId: string(),\n bridges: array(string()),\n // TODO require this after v2 migration\n aggregator: optional(string()),\n steps: array(StepSchema),\n refuel: optional(RefuelDataSchema),\n priceData: optional(\n type({\n totalFromAmountUsd: optional(string()),\n totalToAmountUsd: optional(string()),\n priceImpact: optional(string()),\n totalFeeAmountUsd: optional(string()),\n }),\n ),\n intent: optional(IntentSchema),\n walletAddress: optional(string()),\n destWalletAddress: optional(string()),\n slippage: optional(number()),\n // TODO require this after v2 migration\n protocols: optional(array(string())),\n }),\n]);\n\nexport type Quote = Infer<typeof QuoteSchema>;\n\nexport const QuoteSchemaV2 = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n src: intersection([\n AmountsAndAssetSchema,\n type({\n walletAddress: optional(string()),\n }),\n ]),\n dest: intersection([\n AmountsAndAssetSchema,\n type({\n minAmount: optional(string()),\n minAmountUsd: optional(string()),\n minAmountValueInCurrency: optional(string()),\n minAmountNormalized: optional(string()),\n walletAddress: optional(string()),\n }),\n ]),\n priceData: optional(\n partial(\n type({\n swapRate: FloatStringSchema,\n priceImpact: intersection([\n type({\n amount: optional(FloatStringSchema),\n }),\n pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n ]),\n adjustedReturn: pick(AmountsAndAssetSchema, [\n 'usd',\n 'valueInCurrency',\n ]),\n }),\n ),\n ),\n feeData: type({\n [FeeType.METABRIDGE]: array(\n intersection([\n AmountsAndAssetSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n discountType: optional(nullable(string())),\n }),\n ]),\n ),\n [FeeType.REFUEL]: optional(array(AmountsAndAssetSchema)),\n /**\n * The tx fees included in the quote for gasless execution\n */\n [FeeType.TX_FEE]: optional(\n array(intersection([AmountsAndAssetSchema, TxFeeGasLimitsSchema])),\n ),\n /**\n * The gas fees for the quote, excluding any provider or relayer fees\n */\n [FeeType.NETWORK]: optional(array(AmountsAndAssetSchema)),\n /**\n * The relayer or provider fees for the quote,\n */\n [FeeType.RELAYER]: optional(array(AmountsAndAssetSchema)),\n }),\n aggregator: string(),\n protocols: array(string()),\n steps: optional(array(StepSchemaV2)),\n refuel: optional(StepSchema),\n intent: optional(IntentSchema),\n slippage: optional(number()),\n }),\n]);\n"]}
|
|
@@ -501,10 +501,6 @@ export declare const QuoteSchemaV2: import("@metamask/superstruct").Struct<{
|
|
|
501
501
|
usd?: string | undefined;
|
|
502
502
|
valueInCurrency?: string | undefined;
|
|
503
503
|
} | undefined;
|
|
504
|
-
cost?: {
|
|
505
|
-
usd?: string | undefined;
|
|
506
|
-
valueInCurrency?: string | undefined;
|
|
507
|
-
} | undefined;
|
|
508
504
|
} | undefined;
|
|
509
505
|
steps?: {
|
|
510
506
|
action: import("./step.cjs").ActionTypes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote.d.cts","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAYnD,oBAAY,OAAO;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;IAEjB,MAAM,UAAU;IAChB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIxB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;IAElC;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0DtB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9C,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"quote.d.cts","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAYnD,oBAAY,OAAO;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;IAEjB,MAAM,UAAU;IAChB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIxB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;IAElC;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0DtB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuExB,CAAC"}
|
|
@@ -501,10 +501,6 @@ export declare const QuoteSchemaV2: import("@metamask/superstruct").Struct<{
|
|
|
501
501
|
usd?: string | undefined;
|
|
502
502
|
valueInCurrency?: string | undefined;
|
|
503
503
|
} | undefined;
|
|
504
|
-
cost?: {
|
|
505
|
-
usd?: string | undefined;
|
|
506
|
-
valueInCurrency?: string | undefined;
|
|
507
|
-
} | undefined;
|
|
508
504
|
} | undefined;
|
|
509
505
|
steps?: {
|
|
510
506
|
action: import("./step.mjs").ActionTypes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote.d.mts","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAYnD,oBAAY,OAAO;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;IAEjB,MAAM,UAAU;IAChB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIxB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;IAElC;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0DtB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9C,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"quote.d.mts","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAYnD,oBAAY,OAAO;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;IAEjB,MAAM,UAAU;IAChB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,YAAY;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIxB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;IAElC;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0DtB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuExB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote.mjs","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type,\n optional,\n boolean,\n intersection,\n string,\n number,\n array,\n nullable,\n partial,\n pick,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { AmountsAndAssetSchema } from './amount-and-asset.js';\nimport { ChainIdSchema, BridgeAssetSchema } from './bridge-asset.js';\nimport { IntentSchema } from './intent.js';\nimport {\n TruthyDigitStringSchema,\n PositiveNumberStringSchema,\n FloatStringSchema,\n} from './number.js';\nimport { RefuelDataSchema, StepSchema, StepSchemaV2 } from './step.js';\n\nexport enum FeeType {\n METABRIDGE = 'metabridge',\n REFUEL = 'refuel',\n // eslint-disable-next-line @typescript-eslint/naming-convention\n TX_FEE = 'txFee',\n NETWORK = 'network',\n RELAYER = 'relayer',\n}\n\nexport enum DiscountType {\n VIP = 'vip',\n PROMO = 'promo',\n DAO = 'dao',\n}\n\nexport const FeeDataSchema = type({\n amount: TruthyDigitStringSchema,\n asset: BridgeAssetSchema,\n discountType: optional(nullable(string())),\n});\n\nexport const TxFeeGasLimitsSchema = type({\n maxFeePerGas: PositiveNumberStringSchema,\n maxPriorityFeePerGas: PositiveNumberStringSchema,\n});\n\nexport const GaslessPropertiesSchema = type({\n gasIncluded: optional(boolean()),\n /**\n * Whether the quote can use EIP-7702 delegated gasless execution\n */\n gasIncluded7702: optional(boolean()),\n /**\n * A third party sponsors the gas. If true, then gasIncluded7702 is also true.\n */\n gasSponsored: optional(boolean()),\n});\n\nexport const QuoteSchema = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n srcChainId: ChainIdSchema,\n srcAsset: BridgeAssetSchema,\n /**\n * The amount sent, in atomic amount: amount sent - fees\n * Some tokens have a fee of 0, so sometimes it's equal to amount sent\n */\n srcTokenAmount: string(),\n destChainId: ChainIdSchema,\n destAsset: BridgeAssetSchema,\n /**\n * The amount received, in atomic amount\n */\n destTokenAmount: string(),\n /**\n * The minimum amount that will be received, in atomic amount\n */\n minDestTokenAmount: optional(string()),\n feeData: type({\n [FeeType.METABRIDGE]: intersection([\n FeeDataSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n }),\n ]),\n /**\n * This is the fee for the swap transaction taken from either the\n * src or dest token if the quote has gas fees included or \"gasless\"\n */\n [FeeType.TX_FEE]: optional(\n intersection([FeeDataSchema, TxFeeGasLimitsSchema]),\n ),\n }),\n bridgeId: string(),\n bridges: array(string()),\n // TODO require this after v2 migration\n aggregator: optional(string()),\n steps: array(StepSchema),\n refuel: optional(RefuelDataSchema),\n priceData: optional(\n type({\n totalFromAmountUsd: optional(string()),\n totalToAmountUsd: optional(string()),\n priceImpact: optional(string()),\n totalFeeAmountUsd: optional(string()),\n }),\n ),\n intent: optional(IntentSchema),\n walletAddress: optional(string()),\n destWalletAddress: optional(string()),\n slippage: optional(number()),\n // TODO require this after v2 migration\n protocols: optional(array(string())),\n }),\n]);\n\nexport type Quote = Infer<typeof QuoteSchema>;\n\nexport const QuoteSchemaV2 = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n src: intersection([\n AmountsAndAssetSchema,\n type({\n walletAddress: optional(string()),\n }),\n ]),\n dest: intersection([\n AmountsAndAssetSchema,\n type({\n minAmount: optional(string()),\n minAmountUsd: optional(string()),\n minAmountValueInCurrency: optional(string()),\n minAmountNormalized: optional(string()),\n walletAddress: optional(string()),\n }),\n ]),\n priceData: optional(\n partial(\n type({\n swapRate: FloatStringSchema,\n priceImpact: intersection([\n type({\n amount: optional(FloatStringSchema),\n }),\n pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n ]),\n adjustedReturn: pick(AmountsAndAssetSchema, [\n 'usd',\n 'valueInCurrency',\n ]),\n cost: pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n }),\n ),\n ),\n feeData: type({\n [FeeType.METABRIDGE]: array(\n intersection([\n AmountsAndAssetSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n discountType: optional(nullable(string())),\n }),\n ]),\n ),\n [FeeType.REFUEL]: optional(array(AmountsAndAssetSchema)),\n /**\n * The tx fees included in the quote for gasless execution\n */\n [FeeType.TX_FEE]: optional(\n array(intersection([AmountsAndAssetSchema, TxFeeGasLimitsSchema])),\n ),\n /**\n * The gas fees for the quote, excluding any provider or relayer fees\n */\n [FeeType.NETWORK]: optional(array(AmountsAndAssetSchema)),\n /**\n * The relayer or provider fees for the quote,\n */\n [FeeType.RELAYER]: optional(array(AmountsAndAssetSchema)),\n }),\n aggregator: string(),\n protocols: array(string()),\n steps: optional(array(StepSchemaV2)),\n refuel: optional(StepSchema),\n intent: optional(IntentSchema),\n slippage: optional(number()),\n }),\n]);\n"]}
|
|
1
|
+
{"version":3,"file":"quote.mjs","sourceRoot":"","sources":["../../src/validators/quote.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type,\n optional,\n boolean,\n intersection,\n string,\n number,\n array,\n nullable,\n partial,\n pick,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { AmountsAndAssetSchema } from './amount-and-asset.js';\nimport { ChainIdSchema, BridgeAssetSchema } from './bridge-asset.js';\nimport { IntentSchema } from './intent.js';\nimport {\n TruthyDigitStringSchema,\n PositiveNumberStringSchema,\n FloatStringSchema,\n} from './number.js';\nimport { RefuelDataSchema, StepSchema, StepSchemaV2 } from './step.js';\n\nexport enum FeeType {\n METABRIDGE = 'metabridge',\n REFUEL = 'refuel',\n // eslint-disable-next-line @typescript-eslint/naming-convention\n TX_FEE = 'txFee',\n NETWORK = 'network',\n RELAYER = 'relayer',\n}\n\nexport enum DiscountType {\n VIP = 'vip',\n PROMO = 'promo',\n DAO = 'dao',\n}\n\nexport const FeeDataSchema = type({\n amount: TruthyDigitStringSchema,\n asset: BridgeAssetSchema,\n discountType: optional(nullable(string())),\n});\n\nexport const TxFeeGasLimitsSchema = type({\n maxFeePerGas: PositiveNumberStringSchema,\n maxPriorityFeePerGas: PositiveNumberStringSchema,\n});\n\nexport const GaslessPropertiesSchema = type({\n gasIncluded: optional(boolean()),\n /**\n * Whether the quote can use EIP-7702 delegated gasless execution\n */\n gasIncluded7702: optional(boolean()),\n /**\n * A third party sponsors the gas. If true, then gasIncluded7702 is also true.\n */\n gasSponsored: optional(boolean()),\n});\n\nexport const QuoteSchema = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n srcChainId: ChainIdSchema,\n srcAsset: BridgeAssetSchema,\n /**\n * The amount sent, in atomic amount: amount sent - fees\n * Some tokens have a fee of 0, so sometimes it's equal to amount sent\n */\n srcTokenAmount: string(),\n destChainId: ChainIdSchema,\n destAsset: BridgeAssetSchema,\n /**\n * The amount received, in atomic amount\n */\n destTokenAmount: string(),\n /**\n * The minimum amount that will be received, in atomic amount\n */\n minDestTokenAmount: optional(string()),\n feeData: type({\n [FeeType.METABRIDGE]: intersection([\n FeeDataSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n }),\n ]),\n /**\n * This is the fee for the swap transaction taken from either the\n * src or dest token if the quote has gas fees included or \"gasless\"\n */\n [FeeType.TX_FEE]: optional(\n intersection([FeeDataSchema, TxFeeGasLimitsSchema]),\n ),\n }),\n bridgeId: string(),\n bridges: array(string()),\n // TODO require this after v2 migration\n aggregator: optional(string()),\n steps: array(StepSchema),\n refuel: optional(RefuelDataSchema),\n priceData: optional(\n type({\n totalFromAmountUsd: optional(string()),\n totalToAmountUsd: optional(string()),\n priceImpact: optional(string()),\n totalFeeAmountUsd: optional(string()),\n }),\n ),\n intent: optional(IntentSchema),\n walletAddress: optional(string()),\n destWalletAddress: optional(string()),\n slippage: optional(number()),\n // TODO require this after v2 migration\n protocols: optional(array(string())),\n }),\n]);\n\nexport type Quote = Infer<typeof QuoteSchema>;\n\nexport const QuoteSchemaV2 = intersection([\n GaslessPropertiesSchema,\n type({\n requestId: string(),\n src: intersection([\n AmountsAndAssetSchema,\n type({\n walletAddress: optional(string()),\n }),\n ]),\n dest: intersection([\n AmountsAndAssetSchema,\n type({\n minAmount: optional(string()),\n minAmountUsd: optional(string()),\n minAmountValueInCurrency: optional(string()),\n minAmountNormalized: optional(string()),\n walletAddress: optional(string()),\n }),\n ]),\n priceData: optional(\n partial(\n type({\n swapRate: FloatStringSchema,\n priceImpact: intersection([\n type({\n amount: optional(FloatStringSchema),\n }),\n pick(AmountsAndAssetSchema, ['usd', 'valueInCurrency']),\n ]),\n adjustedReturn: pick(AmountsAndAssetSchema, [\n 'usd',\n 'valueInCurrency',\n ]),\n }),\n ),\n ),\n feeData: type({\n [FeeType.METABRIDGE]: array(\n intersection([\n AmountsAndAssetSchema,\n type({\n quoteBpsFee: optional(number()),\n baseBpsFee: optional(number()),\n discountType: optional(nullable(string())),\n }),\n ]),\n ),\n [FeeType.REFUEL]: optional(array(AmountsAndAssetSchema)),\n /**\n * The tx fees included in the quote for gasless execution\n */\n [FeeType.TX_FEE]: optional(\n array(intersection([AmountsAndAssetSchema, TxFeeGasLimitsSchema])),\n ),\n /**\n * The gas fees for the quote, excluding any provider or relayer fees\n */\n [FeeType.NETWORK]: optional(array(AmountsAndAssetSchema)),\n /**\n * The relayer or provider fees for the quote,\n */\n [FeeType.RELAYER]: optional(array(AmountsAndAssetSchema)),\n }),\n aggregator: string(),\n protocols: array(string()),\n steps: optional(array(StepSchemaV2)),\n refuel: optional(StepSchema),\n intent: optional(IntentSchema),\n slippage: optional(number()),\n }),\n]);\n"]}
|
package/package.json
CHANGED