@metamask/transaction-pay-controller 23.8.0 → 23.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -1
- package/dist/TransactionPayController-method-action-types.cjs.map +1 -1
- package/dist/TransactionPayController-method-action-types.d.cts +12 -1
- package/dist/TransactionPayController-method-action-types.d.cts.map +1 -1
- package/dist/TransactionPayController-method-action-types.d.mts +12 -1
- package/dist/TransactionPayController-method-action-types.d.mts.map +1 -1
- package/dist/TransactionPayController-method-action-types.mjs.map +1 -1
- package/dist/TransactionPayController.cjs +16 -3
- package/dist/TransactionPayController.cjs.map +1 -1
- package/dist/TransactionPayController.d.cts +10 -2
- package/dist/TransactionPayController.d.cts.map +1 -1
- package/dist/TransactionPayController.d.mts +10 -2
- package/dist/TransactionPayController.d.mts.map +1 -1
- package/dist/TransactionPayController.mjs +16 -3
- package/dist/TransactionPayController.mjs.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/strategy/fiat/constants.cjs +1 -3
- package/dist/strategy/fiat/constants.cjs.map +1 -1
- package/dist/strategy/fiat/constants.d.cts +0 -2
- package/dist/strategy/fiat/constants.d.cts.map +1 -1
- package/dist/strategy/fiat/constants.d.mts +0 -2
- package/dist/strategy/fiat/constants.d.mts.map +1 -1
- package/dist/strategy/fiat/constants.mjs +0 -2
- package/dist/strategy/fiat/constants.mjs.map +1 -1
- package/dist/strategy/fiat/fiat-direct-musd.cjs +246 -0
- package/dist/strategy/fiat/fiat-direct-musd.cjs.map +1 -0
- package/dist/strategy/fiat/fiat-direct-musd.d.cts +47 -0
- package/dist/strategy/fiat/fiat-direct-musd.d.cts.map +1 -0
- package/dist/strategy/fiat/fiat-direct-musd.d.mts +47 -0
- package/dist/strategy/fiat/fiat-direct-musd.d.mts.map +1 -0
- package/dist/strategy/fiat/fiat-direct-musd.mjs +240 -0
- package/dist/strategy/fiat/fiat-direct-musd.mjs.map +1 -0
- package/dist/strategy/fiat/fiat-quotes.cjs +27 -79
- package/dist/strategy/fiat/fiat-quotes.cjs.map +1 -1
- package/dist/strategy/fiat/fiat-quotes.d.cts +2 -3
- package/dist/strategy/fiat/fiat-quotes.d.cts.map +1 -1
- package/dist/strategy/fiat/fiat-quotes.d.mts +2 -3
- package/dist/strategy/fiat/fiat-quotes.d.mts.map +1 -1
- package/dist/strategy/fiat/fiat-quotes.mjs +28 -80
- package/dist/strategy/fiat/fiat-quotes.mjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit-simple.cjs +3 -0
- package/dist/strategy/fiat/fiat-submit-simple.cjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit-simple.d.cts.map +1 -1
- package/dist/strategy/fiat/fiat-submit-simple.d.mts.map +1 -1
- package/dist/strategy/fiat/fiat-submit-simple.mjs +3 -0
- package/dist/strategy/fiat/fiat-submit-simple.mjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.cjs +5 -2
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.cjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.d.cts.map +1 -1
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.d.mts.map +1 -1
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.mjs +5 -2
- package/dist/strategy/fiat/fiat-submit-with-transaction-data.mjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit.cjs +57 -35
- package/dist/strategy/fiat/fiat-submit.cjs.map +1 -1
- package/dist/strategy/fiat/fiat-submit.d.cts.map +1 -1
- package/dist/strategy/fiat/fiat-submit.d.mts.map +1 -1
- package/dist/strategy/fiat/fiat-submit.mjs +57 -35
- package/dist/strategy/fiat/fiat-submit.mjs.map +1 -1
- package/dist/strategy/fiat/fiat-test-funding.cjs +166 -0
- package/dist/strategy/fiat/fiat-test-funding.cjs.map +1 -0
- package/dist/strategy/fiat/fiat-test-funding.d.cts +21 -0
- package/dist/strategy/fiat/fiat-test-funding.d.cts.map +1 -0
- package/dist/strategy/fiat/fiat-test-funding.d.mts +21 -0
- package/dist/strategy/fiat/fiat-test-funding.d.mts.map +1 -0
- package/dist/strategy/fiat/fiat-test-funding.mjs +162 -0
- package/dist/strategy/fiat/fiat-test-funding.mjs.map +1 -0
- package/dist/strategy/fiat/types.cjs.map +1 -1
- package/dist/strategy/fiat/types.d.cts +1 -1
- package/dist/strategy/fiat/types.d.cts.map +1 -1
- package/dist/strategy/fiat/types.d.mts +1 -1
- package/dist/strategy/fiat/types.d.mts.map +1 -1
- package/dist/strategy/fiat/types.mjs.map +1 -1
- package/dist/strategy/fiat/utils.cjs +33 -1
- package/dist/strategy/fiat/utils.cjs.map +1 -1
- package/dist/strategy/fiat/utils.d.cts +21 -1
- package/dist/strategy/fiat/utils.d.cts.map +1 -1
- package/dist/strategy/fiat/utils.d.mts +21 -1
- package/dist/strategy/fiat/utils.d.mts.map +1 -1
- package/dist/strategy/fiat/utils.mjs +33 -2
- package/dist/strategy/fiat/utils.mjs.map +1 -1
- package/dist/tests/messenger-mock.cjs +3 -0
- package/dist/tests/messenger-mock.cjs.map +1 -1
- package/dist/tests/messenger-mock.d.cts +1 -0
- package/dist/tests/messenger-mock.d.cts.map +1 -1
- package/dist/tests/messenger-mock.d.mts +1 -0
- package/dist/tests/messenger-mock.d.mts.map +1 -1
- package/dist/tests/messenger-mock.mjs +3 -0
- package/dist/tests/messenger-mock.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +11 -0
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +11 -0
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils/feature-flags.cjs +7 -1
- package/dist/utils/feature-flags.cjs.map +1 -1
- package/dist/utils/feature-flags.d.cts +1 -0
- package/dist/utils/feature-flags.d.cts.map +1 -1
- package/dist/utils/feature-flags.d.mts +1 -0
- package/dist/utils/feature-flags.d.mts.map +1 -1
- package/dist/utils/feature-flags.mjs +5 -0
- package/dist/utils/feature-flags.mjs.map +1 -1
- package/dist/utils/quotes.cjs +6 -4
- package/dist/utils/quotes.cjs.map +1 -1
- package/dist/utils/quotes.d.cts.map +1 -1
- package/dist/utils/quotes.d.mts.map +1 -1
- package/dist/utils/quotes.mjs +6 -4
- package/dist/utils/quotes.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAuCA,6CAAsE;AAA7D,4GAAA,eAAe,OAAA;AAAE,mHAAA,sBAAsB,OAAA;AAChD,2EAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AACjC,qFAAgF;AAAvE,sIAAA,yBAAyB,OAAA","sourcesContent":["export type {\n GetAmountDataCallback,\n GetAmountDataRequest,\n GetAmountDataResponse,\n GetPaymentOverrideDataRequest,\n GetPaymentOverrideDataResponse,\n TransactionConfig,\n TransactionConfigCallback,\n TransactionData,\n TransactionFiatPayment,\n TransactionFiatPaymentCallback,\n TransactionPayFiatOptions,\n TransactionPayControllerActions,\n TransactionPayControllerEvents,\n TransactionPayControllerGetStateAction,\n TransactionPayControllerMessenger,\n TransactionPayControllerOptions,\n TransactionPayControllerState,\n PolymarketCallbacks,\n TransactionPayControllerStateChangeEvent,\n TransactionPaymentToken,\n TransactionPayQuote,\n TransactionPayRequiredToken,\n TransactionPaySourceAmount,\n TransactionPayTotals,\n UpdateFiatPaymentRequest,\n UpdatePaymentTokenRequest,\n} from './types';\nexport type {\n TransactionPayControllerGetAmountDataAction,\n TransactionPayControllerGetDelegationTransactionAction,\n TransactionPayControllerGetFiatOptionsAction,\n TransactionPayControllerGetStrategyAction,\n TransactionPayControllerPolymarketGetDepositWalletAddressAction,\n TransactionPayControllerPolymarketSubmitDepositWalletBatchAction,\n TransactionPayControllerSetTransactionConfigAction,\n TransactionPayControllerUpdatePaymentTokenAction,\n TransactionPayControllerUpdateFiatPaymentAction,\n} from './TransactionPayController-method-action-types';\nexport { PaymentOverride, TransactionPayStrategy } from './constants';\nexport { TransactionPayController } from './TransactionPayController';\nexport { TransactionPayPublishHook } from './helpers/TransactionPayPublishHook';\nexport type { TransactionPayBridgeQuote } from './strategy/bridge/types';\n"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type { GetAmountDataCallback, GetAmountDataRequest, GetAmountDataResponse, GetPaymentOverrideDataRequest, GetPaymentOverrideDataResponse, TransactionConfig, TransactionConfigCallback, TransactionData, TransactionFiatPayment, TransactionFiatPaymentCallback, TransactionPayControllerActions, TransactionPayControllerEvents, TransactionPayControllerGetStateAction, TransactionPayControllerMessenger, TransactionPayControllerOptions, TransactionPayControllerState, PolymarketCallbacks, TransactionPayControllerStateChangeEvent, TransactionPaymentToken, TransactionPayQuote, TransactionPayRequiredToken, TransactionPaySourceAmount, TransactionPayTotals, UpdateFiatPaymentRequest, UpdatePaymentTokenRequest, } from "./types.cjs";
|
|
2
|
-
export type { TransactionPayControllerGetAmountDataAction, TransactionPayControllerGetDelegationTransactionAction, TransactionPayControllerGetStrategyAction, TransactionPayControllerPolymarketGetDepositWalletAddressAction, TransactionPayControllerPolymarketSubmitDepositWalletBatchAction, TransactionPayControllerSetTransactionConfigAction, TransactionPayControllerUpdatePaymentTokenAction, TransactionPayControllerUpdateFiatPaymentAction, } from "./TransactionPayController-method-action-types.cjs";
|
|
1
|
+
export type { GetAmountDataCallback, GetAmountDataRequest, GetAmountDataResponse, GetPaymentOverrideDataRequest, GetPaymentOverrideDataResponse, TransactionConfig, TransactionConfigCallback, TransactionData, TransactionFiatPayment, TransactionFiatPaymentCallback, TransactionPayFiatOptions, TransactionPayControllerActions, TransactionPayControllerEvents, TransactionPayControllerGetStateAction, TransactionPayControllerMessenger, TransactionPayControllerOptions, TransactionPayControllerState, PolymarketCallbacks, TransactionPayControllerStateChangeEvent, TransactionPaymentToken, TransactionPayQuote, TransactionPayRequiredToken, TransactionPaySourceAmount, TransactionPayTotals, UpdateFiatPaymentRequest, UpdatePaymentTokenRequest, } from "./types.cjs";
|
|
2
|
+
export type { TransactionPayControllerGetAmountDataAction, TransactionPayControllerGetDelegationTransactionAction, TransactionPayControllerGetFiatOptionsAction, TransactionPayControllerGetStrategyAction, TransactionPayControllerPolymarketGetDepositWalletAddressAction, TransactionPayControllerPolymarketSubmitDepositWalletBatchAction, TransactionPayControllerSetTransactionConfigAction, TransactionPayControllerUpdatePaymentTokenAction, TransactionPayControllerUpdateFiatPaymentAction, } from "./TransactionPayController-method-action-types.cjs";
|
|
3
3
|
export { PaymentOverride, TransactionPayStrategy } from "./constants.cjs";
|
|
4
4
|
export { TransactionPayController } from "./TransactionPayController.cjs";
|
|
5
5
|
export { TransactionPayPublishHook } from "./helpers/TransactionPayPublishHook.cjs";
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,8BAA8B,EAC9B,sCAAsC,EACtC,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wCAAwC,EACxC,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,GAC1B,oBAAgB;AACjB,YAAY,EACV,2CAA2C,EAC3C,sDAAsD,EACtD,yCAAyC,EACzC,+DAA+D,EAC/D,gEAAgE,EAChE,kDAAkD,EAClD,gDAAgD,EAChD,+CAA+C,GAChD,2DAAuD;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAoB;AACtE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AACtE,OAAO,EAAE,yBAAyB,EAAE,gDAA4C;AAChF,YAAY,EAAE,yBAAyB,EAAE,oCAAgC"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,+BAA+B,EAC/B,8BAA8B,EAC9B,sCAAsC,EACtC,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wCAAwC,EACxC,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,GAC1B,oBAAgB;AACjB,YAAY,EACV,2CAA2C,EAC3C,sDAAsD,EACtD,4CAA4C,EAC5C,yCAAyC,EACzC,+DAA+D,EAC/D,gEAAgE,EAChE,kDAAkD,EAClD,gDAAgD,EAChD,+CAA+C,GAChD,2DAAuD;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAoB;AACtE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AACtE,OAAO,EAAE,yBAAyB,EAAE,gDAA4C;AAChF,YAAY,EAAE,yBAAyB,EAAE,oCAAgC"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type { GetAmountDataCallback, GetAmountDataRequest, GetAmountDataResponse, GetPaymentOverrideDataRequest, GetPaymentOverrideDataResponse, TransactionConfig, TransactionConfigCallback, TransactionData, TransactionFiatPayment, TransactionFiatPaymentCallback, TransactionPayControllerActions, TransactionPayControllerEvents, TransactionPayControllerGetStateAction, TransactionPayControllerMessenger, TransactionPayControllerOptions, TransactionPayControllerState, PolymarketCallbacks, TransactionPayControllerStateChangeEvent, TransactionPaymentToken, TransactionPayQuote, TransactionPayRequiredToken, TransactionPaySourceAmount, TransactionPayTotals, UpdateFiatPaymentRequest, UpdatePaymentTokenRequest, } from "./types.mjs";
|
|
2
|
-
export type { TransactionPayControllerGetAmountDataAction, TransactionPayControllerGetDelegationTransactionAction, TransactionPayControllerGetStrategyAction, TransactionPayControllerPolymarketGetDepositWalletAddressAction, TransactionPayControllerPolymarketSubmitDepositWalletBatchAction, TransactionPayControllerSetTransactionConfigAction, TransactionPayControllerUpdatePaymentTokenAction, TransactionPayControllerUpdateFiatPaymentAction, } from "./TransactionPayController-method-action-types.mjs";
|
|
1
|
+
export type { GetAmountDataCallback, GetAmountDataRequest, GetAmountDataResponse, GetPaymentOverrideDataRequest, GetPaymentOverrideDataResponse, TransactionConfig, TransactionConfigCallback, TransactionData, TransactionFiatPayment, TransactionFiatPaymentCallback, TransactionPayFiatOptions, TransactionPayControllerActions, TransactionPayControllerEvents, TransactionPayControllerGetStateAction, TransactionPayControllerMessenger, TransactionPayControllerOptions, TransactionPayControllerState, PolymarketCallbacks, TransactionPayControllerStateChangeEvent, TransactionPaymentToken, TransactionPayQuote, TransactionPayRequiredToken, TransactionPaySourceAmount, TransactionPayTotals, UpdateFiatPaymentRequest, UpdatePaymentTokenRequest, } from "./types.mjs";
|
|
2
|
+
export type { TransactionPayControllerGetAmountDataAction, TransactionPayControllerGetDelegationTransactionAction, TransactionPayControllerGetFiatOptionsAction, TransactionPayControllerGetStrategyAction, TransactionPayControllerPolymarketGetDepositWalletAddressAction, TransactionPayControllerPolymarketSubmitDepositWalletBatchAction, TransactionPayControllerSetTransactionConfigAction, TransactionPayControllerUpdatePaymentTokenAction, TransactionPayControllerUpdateFiatPaymentAction, } from "./TransactionPayController-method-action-types.mjs";
|
|
3
3
|
export { PaymentOverride, TransactionPayStrategy } from "./constants.mjs";
|
|
4
4
|
export { TransactionPayController } from "./TransactionPayController.mjs";
|
|
5
5
|
export { TransactionPayPublishHook } from "./helpers/TransactionPayPublishHook.mjs";
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,+BAA+B,EAC/B,8BAA8B,EAC9B,sCAAsC,EACtC,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wCAAwC,EACxC,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,GAC1B,oBAAgB;AACjB,YAAY,EACV,2CAA2C,EAC3C,sDAAsD,EACtD,yCAAyC,EACzC,+DAA+D,EAC/D,gEAAgE,EAChE,kDAAkD,EAClD,gDAAgD,EAChD,+CAA+C,GAChD,2DAAuD;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAoB;AACtE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AACtE,OAAO,EAAE,yBAAyB,EAAE,gDAA4C;AAChF,YAAY,EAAE,yBAAyB,EAAE,oCAAgC"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EACzB,+BAA+B,EAC/B,8BAA8B,EAC9B,sCAAsC,EACtC,iCAAiC,EACjC,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wCAAwC,EACxC,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,GAC1B,oBAAgB;AACjB,YAAY,EACV,2CAA2C,EAC3C,sDAAsD,EACtD,4CAA4C,EAC5C,yCAAyC,EACzC,+DAA+D,EAC/D,gEAAgE,EAChE,kDAAkD,EAClD,gDAAgD,EAChD,+CAA+C,GAChD,2DAAuD;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAoB;AACtE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AACtE,OAAO,EAAE,yBAAyB,EAAE,gDAA4C;AAChF,YAAY,EAAE,yBAAyB,EAAE,oCAAgC"}
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAoB;AACtE,OAAO,EAAE,wBAAwB,EAAE,uCAAmC;AACtE,OAAO,EAAE,yBAAyB,EAAE,gDAA4C","sourcesContent":["export type {\n GetAmountDataCallback,\n GetAmountDataRequest,\n GetAmountDataResponse,\n GetPaymentOverrideDataRequest,\n GetPaymentOverrideDataResponse,\n TransactionConfig,\n TransactionConfigCallback,\n TransactionData,\n TransactionFiatPayment,\n TransactionFiatPaymentCallback,\n TransactionPayFiatOptions,\n TransactionPayControllerActions,\n TransactionPayControllerEvents,\n TransactionPayControllerGetStateAction,\n TransactionPayControllerMessenger,\n TransactionPayControllerOptions,\n TransactionPayControllerState,\n PolymarketCallbacks,\n TransactionPayControllerStateChangeEvent,\n TransactionPaymentToken,\n TransactionPayQuote,\n TransactionPayRequiredToken,\n TransactionPaySourceAmount,\n TransactionPayTotals,\n UpdateFiatPaymentRequest,\n UpdatePaymentTokenRequest,\n} from './types';\nexport type {\n TransactionPayControllerGetAmountDataAction,\n TransactionPayControllerGetDelegationTransactionAction,\n TransactionPayControllerGetFiatOptionsAction,\n TransactionPayControllerGetStrategyAction,\n TransactionPayControllerPolymarketGetDepositWalletAddressAction,\n TransactionPayControllerPolymarketSubmitDepositWalletBatchAction,\n TransactionPayControllerSetTransactionConfigAction,\n TransactionPayControllerUpdatePaymentTokenAction,\n TransactionPayControllerUpdateFiatPaymentAction,\n} from './TransactionPayController-method-action-types';\nexport { PaymentOverride, TransactionPayStrategy } from './constants';\nexport { TransactionPayController } from './TransactionPayController';\nexport { TransactionPayPublishHook } from './helpers/TransactionPayPublishHook';\nexport type { TransactionPayBridgeQuote } from './strategy/bridge/types';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.MUSD_MONAD_FIAT_ASSET = exports.FIAT_ENABLED_TYPES = exports.FIAT_ASSET_ID_BY_TX_TYPE = exports.ETH_MAINNET_FIAT_ASSET = exports.DEFAULT_FIAT_CURRENCY = void 0;
|
|
4
4
|
const transaction_controller_1 = require("@metamask/transaction-controller");
|
|
5
5
|
const constants_1 = require("../../constants.cjs");
|
|
6
6
|
exports.DEFAULT_FIAT_CURRENCY = 'USD';
|
|
@@ -31,6 +31,4 @@ exports.MUSD_MONAD_FIAT_ASSET = {
|
|
|
31
31
|
address: constants_1.MUSD_MONAD_ADDRESS,
|
|
32
32
|
chainId: constants_1.CHAIN_ID_MONAD,
|
|
33
33
|
};
|
|
34
|
-
/** Fixed USD amount used to probe whether any fiat provider can sell mUSD on Monad. */
|
|
35
|
-
exports.MUSD_PROBE_AMOUNT_USD = 50;
|
|
36
34
|
//# sourceMappingURL=constants.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.cjs","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":";;;AAAA,6EAAmE;AAGnE,mDAOyB;AAEZ,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAO3C,MAAM,sBAAsB,GAA4B;IACtD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4BAAgB;CAC1B,CAAC;AAEF,MAAM,uBAAuB,GAA4B;IACvD,OAAO,EAAE,gCAAoB;IAC7B,OAAO,EAAE,6BAAiB;CAC3B,CAAC;AAEW,QAAA,sBAAsB,GAA4B;IAC7D,OAAO,EAAE,gCAAoB;IAC7B,OAAO,EAAE,4BAAgB;CAC1B,CAAC;AAEW,QAAA,wBAAwB,GAEjC;IACF,CAAC,wCAAe,CAAC,mBAAmB,CAAC,EAAE,8BAAsB;IAC7D,CAAC,wCAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB;IACvD,CAAC,wCAAe,CAAC,cAAc,CAAC,EAAE,sBAAsB;CACzD,CAAC;AAEW,QAAA,kBAAkB,GAAsB;IACnD,wCAAe,CAAC,mBAAmB;IACnC,wCAAe,CAAC,YAAY;IAC5B,wCAAe,CAAC,cAAc;CAC/B,CAAC;AAEF,+CAA+C;AAClC,QAAA,qBAAqB,GAA4B;IAC5D,OAAO,EAAE,8BAAkB;IAC3B,OAAO,EAAE,0BAAc;CACxB,CAAC
|
|
1
|
+
{"version":3,"file":"constants.cjs","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":";;;AAAA,6EAAmE;AAGnE,mDAOyB;AAEZ,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAO3C,MAAM,sBAAsB,GAA4B;IACtD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4BAAgB;CAC1B,CAAC;AAEF,MAAM,uBAAuB,GAA4B;IACvD,OAAO,EAAE,gCAAoB;IAC7B,OAAO,EAAE,6BAAiB;CAC3B,CAAC;AAEW,QAAA,sBAAsB,GAA4B;IAC7D,OAAO,EAAE,gCAAoB;IAC7B,OAAO,EAAE,4BAAgB;CAC1B,CAAC;AAEW,QAAA,wBAAwB,GAEjC;IACF,CAAC,wCAAe,CAAC,mBAAmB,CAAC,EAAE,8BAAsB;IAC7D,CAAC,wCAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB;IACvD,CAAC,wCAAe,CAAC,cAAc,CAAC,EAAE,sBAAsB;CACzD,CAAC;AAEW,QAAA,kBAAkB,GAAsB;IACnD,wCAAe,CAAC,mBAAmB;IACnC,wCAAe,CAAC,YAAY;IAC5B,wCAAe,CAAC,cAAc;CAC/B,CAAC;AAEF,+CAA+C;AAClC,QAAA,qBAAqB,GAA4B;IAC5D,OAAO,EAAE,8BAAkB;IAC3B,OAAO,EAAE,0BAAc;CACxB,CAAC","sourcesContent":["import { TransactionType } from '@metamask/transaction-controller';\nimport type { Hex } from '@metamask/utils';\n\nimport {\n CHAIN_ID_ARBITRUM,\n CHAIN_ID_MAINNET,\n CHAIN_ID_MONAD,\n CHAIN_ID_POLYGON,\n MUSD_MONAD_ADDRESS,\n NATIVE_TOKEN_ADDRESS,\n} from '../../constants';\n\nexport const DEFAULT_FIAT_CURRENCY = 'USD';\n\nexport type TransactionPayFiatAsset = {\n address: Hex;\n chainId: Hex;\n};\n\nconst POLYGON_POL_FIAT_ASSET: TransactionPayFiatAsset = {\n address: '0x0000000000000000000000000000000000001010',\n chainId: CHAIN_ID_POLYGON,\n};\n\nconst ARBITRUM_ETH_FIAT_ASSET: TransactionPayFiatAsset = {\n address: NATIVE_TOKEN_ADDRESS,\n chainId: CHAIN_ID_ARBITRUM,\n};\n\nexport const ETH_MAINNET_FIAT_ASSET: TransactionPayFiatAsset = {\n address: NATIVE_TOKEN_ADDRESS,\n chainId: CHAIN_ID_MAINNET,\n};\n\nexport const FIAT_ASSET_ID_BY_TX_TYPE: Partial<\n Record<TransactionType, TransactionPayFiatAsset>\n> = {\n [TransactionType.moneyAccountDeposit]: ETH_MAINNET_FIAT_ASSET,\n [TransactionType.perpsDeposit]: ARBITRUM_ETH_FIAT_ASSET,\n [TransactionType.predictDeposit]: POLYGON_POL_FIAT_ASSET,\n};\n\nexport const FIAT_ENABLED_TYPES: TransactionType[] = [\n TransactionType.moneyAccountDeposit,\n TransactionType.perpsDeposit,\n TransactionType.predictDeposit,\n];\n\n/** Fiat asset descriptor for mUSD on Monad. */\nexport const MUSD_MONAD_FIAT_ASSET: TransactionPayFiatAsset = {\n address: MUSD_MONAD_ADDRESS,\n chainId: CHAIN_ID_MONAD,\n};\n"]}
|
|
@@ -10,6 +10,4 @@ export declare const FIAT_ASSET_ID_BY_TX_TYPE: Partial<Record<TransactionType, T
|
|
|
10
10
|
export declare const FIAT_ENABLED_TYPES: TransactionType[];
|
|
11
11
|
/** Fiat asset descriptor for mUSD on Monad. */
|
|
12
12
|
export declare const MUSD_MONAD_FIAT_ASSET: TransactionPayFiatAsset;
|
|
13
|
-
/** Fixed USD amount used to probe whether any fiat provider can sell mUSD on Monad. */
|
|
14
|
-
export declare const MUSD_PROBE_AMOUNT_USD = 50;
|
|
15
13
|
//# sourceMappingURL=constants.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.cts","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAW3C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAYF,eAAO,MAAM,sBAAsB,EAAE,uBAGpC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAAO,CAC5C,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAKjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAI/C,CAAC;AAEF,+CAA+C;AAC/C,eAAO,MAAM,qBAAqB,EAAE,uBAGnC,CAAC
|
|
1
|
+
{"version":3,"file":"constants.d.cts","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAW3C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAYF,eAAO,MAAM,sBAAsB,EAAE,uBAGpC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAAO,CAC5C,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAKjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAI/C,CAAC;AAEF,+CAA+C;AAC/C,eAAO,MAAM,qBAAqB,EAAE,uBAGnC,CAAC"}
|
|
@@ -10,6 +10,4 @@ export declare const FIAT_ASSET_ID_BY_TX_TYPE: Partial<Record<TransactionType, T
|
|
|
10
10
|
export declare const FIAT_ENABLED_TYPES: TransactionType[];
|
|
11
11
|
/** Fiat asset descriptor for mUSD on Monad. */
|
|
12
12
|
export declare const MUSD_MONAD_FIAT_ASSET: TransactionPayFiatAsset;
|
|
13
|
-
/** Fixed USD amount used to probe whether any fiat provider can sell mUSD on Monad. */
|
|
14
|
-
export declare const MUSD_PROBE_AMOUNT_USD = 50;
|
|
15
13
|
//# sourceMappingURL=constants.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAW3C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAYF,eAAO,MAAM,sBAAsB,EAAE,uBAGpC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAAO,CAC5C,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAKjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAI/C,CAAC;AAEF,+CAA+C;AAC/C,eAAO,MAAM,qBAAqB,EAAE,uBAGnC,CAAC
|
|
1
|
+
{"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAW3C,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAYF,eAAO,MAAM,sBAAsB,EAAE,uBAGpC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,OAAO,CAC5C,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAKjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAI/C,CAAC;AAEF,+CAA+C;AAC/C,eAAO,MAAM,qBAAqB,EAAE,uBAGnC,CAAC"}
|
|
@@ -28,6 +28,4 @@ export const MUSD_MONAD_FIAT_ASSET = {
|
|
|
28
28
|
address: MUSD_MONAD_ADDRESS,
|
|
29
29
|
chainId: CHAIN_ID_MONAD,
|
|
30
30
|
};
|
|
31
|
-
/** Fixed USD amount used to probe whether any fiat provider can sell mUSD on Monad. */
|
|
32
|
-
export const MUSD_PROBE_AMOUNT_USD = 50;
|
|
33
31
|
//# sourceMappingURL=constants.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AAGnE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACrB,4BAAwB;AAEzB,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAO3C,MAAM,sBAAsB,GAA4B;IACtD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,gBAAgB;CAC1B,CAAC;AAEF,MAAM,uBAAuB,GAA4B;IACvD,OAAO,EAAE,oBAAoB;IAC7B,OAAO,EAAE,iBAAiB;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,OAAO,EAAE,oBAAoB;IAC7B,OAAO,EAAE,gBAAgB;CAC1B,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAEjC;IACF,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAAE,sBAAsB;IAC7D,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB;IACvD,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,sBAAsB;CACzD,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAsB;IACnD,eAAe,CAAC,mBAAmB;IACnC,eAAe,CAAC,YAAY;IAC5B,eAAe,CAAC,cAAc;CAC/B,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAA4B;IAC5D,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,cAAc;CACxB,CAAC
|
|
1
|
+
{"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../../src/strategy/fiat/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,yCAAyC;AAGnE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACrB,4BAAwB;AAEzB,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAO3C,MAAM,sBAAsB,GAA4B;IACtD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,gBAAgB;CAC1B,CAAC;AAEF,MAAM,uBAAuB,GAA4B;IACvD,OAAO,EAAE,oBAAoB;IAC7B,OAAO,EAAE,iBAAiB;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,OAAO,EAAE,oBAAoB;IAC7B,OAAO,EAAE,gBAAgB;CAC1B,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAEjC;IACF,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAAE,sBAAsB;IAC7D,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,uBAAuB;IACvD,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,sBAAsB;CACzD,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAsB;IACnD,eAAe,CAAC,mBAAmB;IACnC,eAAe,CAAC,YAAY;IAC5B,eAAe,CAAC,cAAc;CAC/B,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAA4B;IAC5D,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,cAAc;CACxB,CAAC","sourcesContent":["import { TransactionType } from '@metamask/transaction-controller';\nimport type { Hex } from '@metamask/utils';\n\nimport {\n CHAIN_ID_ARBITRUM,\n CHAIN_ID_MAINNET,\n CHAIN_ID_MONAD,\n CHAIN_ID_POLYGON,\n MUSD_MONAD_ADDRESS,\n NATIVE_TOKEN_ADDRESS,\n} from '../../constants';\n\nexport const DEFAULT_FIAT_CURRENCY = 'USD';\n\nexport type TransactionPayFiatAsset = {\n address: Hex;\n chainId: Hex;\n};\n\nconst POLYGON_POL_FIAT_ASSET: TransactionPayFiatAsset = {\n address: '0x0000000000000000000000000000000000001010',\n chainId: CHAIN_ID_POLYGON,\n};\n\nconst ARBITRUM_ETH_FIAT_ASSET: TransactionPayFiatAsset = {\n address: NATIVE_TOKEN_ADDRESS,\n chainId: CHAIN_ID_ARBITRUM,\n};\n\nexport const ETH_MAINNET_FIAT_ASSET: TransactionPayFiatAsset = {\n address: NATIVE_TOKEN_ADDRESS,\n chainId: CHAIN_ID_MAINNET,\n};\n\nexport const FIAT_ASSET_ID_BY_TX_TYPE: Partial<\n Record<TransactionType, TransactionPayFiatAsset>\n> = {\n [TransactionType.moneyAccountDeposit]: ETH_MAINNET_FIAT_ASSET,\n [TransactionType.perpsDeposit]: ARBITRUM_ETH_FIAT_ASSET,\n [TransactionType.predictDeposit]: POLYGON_POL_FIAT_ASSET,\n};\n\nexport const FIAT_ENABLED_TYPES: TransactionType[] = [\n TransactionType.moneyAccountDeposit,\n TransactionType.perpsDeposit,\n TransactionType.predictDeposit,\n];\n\n/** Fiat asset descriptor for mUSD on Monad. */\nexport const MUSD_MONAD_FIAT_ASSET: TransactionPayFiatAsset = {\n address: MUSD_MONAD_ADDRESS,\n chainId: CHAIN_ID_MONAD,\n};\n"]}
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.submitDirectMusdVaultDeposit = exports.isDirectMusdMoneyAccountQuote = exports.getDirectMusdFiatQuote = void 0;
|
|
4
|
+
const controller_utils_1 = require("@metamask/controller-utils");
|
|
5
|
+
const transaction_controller_1 = require("@metamask/transaction-controller");
|
|
6
|
+
const utils_1 = require("@metamask/utils");
|
|
7
|
+
const bignumber_js_1 = require("bignumber.js");
|
|
8
|
+
const constants_1 = require("../../constants.cjs");
|
|
9
|
+
const logger_1 = require("../../logger.cjs");
|
|
10
|
+
const feature_flags_1 = require("../../utils/feature-flags.cjs");
|
|
11
|
+
const provider_1 = require("../../utils/provider.cjs");
|
|
12
|
+
const token_1 = require("../../utils/token.cjs");
|
|
13
|
+
const transaction_1 = require("../../utils/transaction.cjs");
|
|
14
|
+
const constants_2 = require("./constants.cjs");
|
|
15
|
+
const utils_2 = require("./utils.cjs");
|
|
16
|
+
const log = (0, utils_1.createModuleLogger)(logger_1.projectLogger, 'fiat-direct-musd');
|
|
17
|
+
/**
|
|
18
|
+
* Returns a direct mUSD fiat quote to the Money Account.
|
|
19
|
+
*
|
|
20
|
+
* @param options - Direct quote options.
|
|
21
|
+
* @param options.amountFiat - Fiat amount entered by the user.
|
|
22
|
+
* @param options.fiatPaymentMethod - Selected fiat payment method.
|
|
23
|
+
* @param options.messenger - Controller messenger.
|
|
24
|
+
* @param options.moneyAccountAddress - Money Account receiving the on-ramped mUSD.
|
|
25
|
+
* @param options.requiredToken - Required token from the original Money Account transaction.
|
|
26
|
+
* @param options.transactionId - Transaction ID for state updates and logs.
|
|
27
|
+
* @returns Direct mUSD Fiat quote, or undefined when unavailable.
|
|
28
|
+
*/
|
|
29
|
+
async function getDirectMusdFiatQuote({ amountFiat, fiatPaymentMethod, messenger, moneyAccountAddress, requiredToken, transactionId, }) {
|
|
30
|
+
try {
|
|
31
|
+
const adjustedAmount = Number(amountFiat);
|
|
32
|
+
if (!Number.isFinite(adjustedAmount) || adjustedAmount <= 0) {
|
|
33
|
+
throw new Error('Invalid fiat amount for direct mUSD quote');
|
|
34
|
+
}
|
|
35
|
+
const fiatQuote = await (0, utils_2.getRampsQuote)({
|
|
36
|
+
adjustedAmount,
|
|
37
|
+
errorMessage: 'No matching ramps quote found for direct mUSD provider',
|
|
38
|
+
fiatAsset: constants_2.MUSD_MONAD_FIAT_ASSET,
|
|
39
|
+
fiatPaymentMethod,
|
|
40
|
+
messenger,
|
|
41
|
+
walletAddress: moneyAccountAddress,
|
|
42
|
+
});
|
|
43
|
+
messenger.call('TransactionPayController:updateFiatPayment', {
|
|
44
|
+
callback: (fiatPayment) => {
|
|
45
|
+
fiatPayment.rampsQuote = fiatQuote;
|
|
46
|
+
fiatPayment.caipAssetId = (0, token_1.buildCaipAssetType)(constants_2.MUSD_MONAD_FIAT_ASSET.chainId, constants_2.MUSD_MONAD_FIAT_ASSET.address);
|
|
47
|
+
},
|
|
48
|
+
transactionId,
|
|
49
|
+
});
|
|
50
|
+
log('Direct mUSD fiat quote flow', {
|
|
51
|
+
amountFiat,
|
|
52
|
+
moneyAccountAddress,
|
|
53
|
+
transactionId,
|
|
54
|
+
});
|
|
55
|
+
return combineDirectMusdFiatQuote({
|
|
56
|
+
amountFiat,
|
|
57
|
+
fiatQuote,
|
|
58
|
+
messenger,
|
|
59
|
+
moneyAccountAddress,
|
|
60
|
+
requiredToken,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
log('Direct mUSD fiat quote failed', { error, transactionId });
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.getDirectMusdFiatQuote = getDirectMusdFiatQuote;
|
|
69
|
+
/**
|
|
70
|
+
* Detects a direct mUSD Money Account quote from its stored request marker.
|
|
71
|
+
*
|
|
72
|
+
* @param quote - Quote to inspect.
|
|
73
|
+
* @returns True when the quote originated from the direct mUSD fiat path.
|
|
74
|
+
*/
|
|
75
|
+
function isDirectMusdMoneyAccountQuote(quote) {
|
|
76
|
+
return quote?.request.isDirectMusdMoneyAccount === true;
|
|
77
|
+
}
|
|
78
|
+
exports.isDirectMusdMoneyAccountQuote = isDirectMusdMoneyAccountQuote;
|
|
79
|
+
/**
|
|
80
|
+
* Submits the direct mUSD Money Account vault batch after fiat settlement.
|
|
81
|
+
*
|
|
82
|
+
* @param options - Submit options.
|
|
83
|
+
* @param options.request - Strategy execute request.
|
|
84
|
+
* @param options.sourceAmountRaw - Settled source amount in raw mUSD units.
|
|
85
|
+
* @param options.transaction - Original Money Account transaction.
|
|
86
|
+
* @returns Hash of the final submitted child transaction, if available.
|
|
87
|
+
*/
|
|
88
|
+
async function submitDirectMusdVaultDeposit({ request, sourceAmountRaw, transaction, }) {
|
|
89
|
+
const { messenger } = request;
|
|
90
|
+
const transactionId = transaction.id;
|
|
91
|
+
const moneyAccountAddress = transaction.txParams.from;
|
|
92
|
+
if (!moneyAccountAddress) {
|
|
93
|
+
throw new Error('Missing Money Account address for direct mUSD submit');
|
|
94
|
+
}
|
|
95
|
+
if ((0, feature_flags_1.getFiatVaultDisabled)(messenger)) {
|
|
96
|
+
log('Skipping direct mUSD vault deposit because vaultDisabled is enabled', {
|
|
97
|
+
moneyAccountAddress,
|
|
98
|
+
sourceAmountRaw,
|
|
99
|
+
transactionId,
|
|
100
|
+
});
|
|
101
|
+
return { transactionHash: '0x' };
|
|
102
|
+
}
|
|
103
|
+
const updatedTransaction = (0, transaction_1.getTransaction)(transactionId, messenger) ?? transaction;
|
|
104
|
+
const { updates } = await messenger.call('TransactionPayController:getAmountData', {
|
|
105
|
+
amount: sourceAmountRaw,
|
|
106
|
+
transaction: updatedTransaction,
|
|
107
|
+
});
|
|
108
|
+
if (!updates.length) {
|
|
109
|
+
throw new Error('getAmountData returned no updates for direct mUSD submit');
|
|
110
|
+
}
|
|
111
|
+
const nestedTransactions = updatedTransaction.nestedTransactions?.map((nestedTransaction) => ({ ...nestedTransaction }));
|
|
112
|
+
if (!nestedTransactions?.length) {
|
|
113
|
+
throw new Error('Missing nested transactions for direct mUSD submit');
|
|
114
|
+
}
|
|
115
|
+
for (const { nestedTransactionIndex, data } of updates) {
|
|
116
|
+
if (nestedTransactions[nestedTransactionIndex]) {
|
|
117
|
+
nestedTransactions[nestedTransactionIndex].data = data;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
(0, transaction_1.updateTransaction)({ transactionId, messenger, note: 'Direct mUSD fiat: update vault amount' }, (tx) => {
|
|
121
|
+
for (const { nestedTransactionIndex, data } of updates) {
|
|
122
|
+
if (tx.nestedTransactions?.[nestedTransactionIndex]) {
|
|
123
|
+
tx.nestedTransactions[nestedTransactionIndex].data = data;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (tx.requiredAssets?.[0]) {
|
|
127
|
+
tx.requiredAssets[0].amount = `0x${BigInt(sourceAmountRaw).toString(16)}`;
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
const networkClientId = (0, provider_1.getNetworkClientId)(messenger, constants_2.MUSD_MONAD_FIAT_ASSET.chainId);
|
|
131
|
+
const transactionIds = [];
|
|
132
|
+
const { end } = (0, transaction_1.collectTransactionIds)(constants_2.MUSD_MONAD_FIAT_ASSET.chainId, moneyAccountAddress, messenger, (id) => {
|
|
133
|
+
transactionIds.push(id);
|
|
134
|
+
(0, transaction_1.updateTransaction)({
|
|
135
|
+
transactionId,
|
|
136
|
+
messenger,
|
|
137
|
+
note: 'Add required transaction ID from direct mUSD vault submission',
|
|
138
|
+
}, (tx) => {
|
|
139
|
+
tx.requiredTransactionIds ?? (tx.requiredTransactionIds = []);
|
|
140
|
+
tx.requiredTransactionIds.push(id);
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
log('Submitting direct mUSD vault deposit', {
|
|
144
|
+
moneyAccountAddress,
|
|
145
|
+
nestedTransactionCount: nestedTransactions.length,
|
|
146
|
+
networkClientId,
|
|
147
|
+
sourceAmountRaw,
|
|
148
|
+
transactionId,
|
|
149
|
+
});
|
|
150
|
+
await messenger.call('TransactionController:addTransactionBatch', {
|
|
151
|
+
from: moneyAccountAddress,
|
|
152
|
+
isGasFeeSponsored: true,
|
|
153
|
+
isInternal: true,
|
|
154
|
+
networkClientId,
|
|
155
|
+
origin: controller_utils_1.ORIGIN_METAMASK,
|
|
156
|
+
requireApproval: false,
|
|
157
|
+
transactions: nestedTransactions.map((nestedTransaction, index) => ({
|
|
158
|
+
params: {
|
|
159
|
+
data: nestedTransaction.data,
|
|
160
|
+
to: nestedTransaction.to,
|
|
161
|
+
value: nestedTransaction.value ?? '0x0',
|
|
162
|
+
},
|
|
163
|
+
type: index === 0
|
|
164
|
+
? (nestedTransaction.type ?? transaction_controller_1.TransactionType.tokenMethodApprove)
|
|
165
|
+
: transaction_controller_1.TransactionType.contractInteraction,
|
|
166
|
+
})),
|
|
167
|
+
});
|
|
168
|
+
end();
|
|
169
|
+
log('Submitted direct mUSD vault deposit', {
|
|
170
|
+
moneyAccountAddress,
|
|
171
|
+
nestedTransactionCount: nestedTransactions.length,
|
|
172
|
+
networkClientId,
|
|
173
|
+
sourceAmountRaw,
|
|
174
|
+
transactionId,
|
|
175
|
+
transactionIds,
|
|
176
|
+
});
|
|
177
|
+
await Promise.all(transactionIds.map((id) => (0, transaction_1.waitForTransactionConfirmed)(id, messenger)));
|
|
178
|
+
const hash = (0, transaction_1.getTransaction)(transactionIds.slice(-1)[0], messenger)?.hash;
|
|
179
|
+
log('Confirmed direct mUSD vault deposit', {
|
|
180
|
+
hash,
|
|
181
|
+
moneyAccountAddress,
|
|
182
|
+
nestedTransactionCount: nestedTransactions.length,
|
|
183
|
+
networkClientId,
|
|
184
|
+
sourceAmountRaw,
|
|
185
|
+
transactionId,
|
|
186
|
+
transactionIds,
|
|
187
|
+
});
|
|
188
|
+
return { transactionHash: hash };
|
|
189
|
+
}
|
|
190
|
+
exports.submitDirectMusdVaultDeposit = submitDirectMusdVaultDeposit;
|
|
191
|
+
function combineDirectMusdFiatQuote({ amountFiat, fiatQuote, messenger, moneyAccountAddress, requiredToken, }) {
|
|
192
|
+
const tokenInfo = (0, token_1.getTokenInfo)(messenger, constants_2.MUSD_MONAD_FIAT_ASSET.address, constants_2.MUSD_MONAD_FIAT_ASSET.chainId);
|
|
193
|
+
if (!tokenInfo) {
|
|
194
|
+
throw new Error('Unable to resolve mUSD token info for direct fiat quote');
|
|
195
|
+
}
|
|
196
|
+
const sourceAmountRaw = (0, utils_2.getRawSourceAmountFromOrderCryptoAmount)({
|
|
197
|
+
cryptoAmount: fiatQuote.quote.amountOut,
|
|
198
|
+
decimals: tokenInfo.decimals,
|
|
199
|
+
});
|
|
200
|
+
const rampsProviderFee = getRampsProviderFee(fiatQuote).toString(10);
|
|
201
|
+
const sourceAmountHuman = new bignumber_js_1.BigNumber(sourceAmountRaw)
|
|
202
|
+
.shiftedBy(-tokenInfo.decimals)
|
|
203
|
+
.toString(10);
|
|
204
|
+
return {
|
|
205
|
+
dust: { fiat: '0', usd: '0' },
|
|
206
|
+
estimatedDuration: 0,
|
|
207
|
+
fees: {
|
|
208
|
+
metaMask: { fiat: '0', usd: '0' },
|
|
209
|
+
provider: { fiat: rampsProviderFee, usd: rampsProviderFee },
|
|
210
|
+
providerFiat: { fiat: rampsProviderFee, usd: rampsProviderFee },
|
|
211
|
+
sourceNetwork: {
|
|
212
|
+
estimate: { fiat: '0', human: '0', raw: '0', usd: '0' },
|
|
213
|
+
max: { fiat: '0', human: '0', raw: '0', usd: '0' },
|
|
214
|
+
},
|
|
215
|
+
targetNetwork: { fiat: '0', usd: '0' },
|
|
216
|
+
},
|
|
217
|
+
original: {
|
|
218
|
+
rampsQuote: fiatQuote,
|
|
219
|
+
relayQuote: undefined,
|
|
220
|
+
},
|
|
221
|
+
request: {
|
|
222
|
+
from: moneyAccountAddress,
|
|
223
|
+
isDirectMusdMoneyAccount: true,
|
|
224
|
+
recipient: moneyAccountAddress,
|
|
225
|
+
sourceBalanceRaw: sourceAmountRaw,
|
|
226
|
+
sourceChainId: constants_2.MUSD_MONAD_FIAT_ASSET.chainId,
|
|
227
|
+
sourceTokenAddress: constants_2.MUSD_MONAD_FIAT_ASSET.address,
|
|
228
|
+
sourceTokenAmount: sourceAmountRaw,
|
|
229
|
+
targetAmountMinimum: sourceAmountRaw,
|
|
230
|
+
targetChainId: requiredToken.chainId,
|
|
231
|
+
targetTokenAddress: requiredToken.address,
|
|
232
|
+
},
|
|
233
|
+
sourceAmount: {
|
|
234
|
+
fiat: amountFiat,
|
|
235
|
+
human: sourceAmountHuman,
|
|
236
|
+
raw: sourceAmountRaw,
|
|
237
|
+
usd: amountFiat,
|
|
238
|
+
},
|
|
239
|
+
strategy: constants_1.TransactionPayStrategy.Fiat,
|
|
240
|
+
targetAmount: { fiat: amountFiat, usd: amountFiat },
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
function getRampsProviderFee(fiatQuote) {
|
|
244
|
+
return new bignumber_js_1.BigNumber(fiatQuote.quote.providerFee ?? 0).plus(fiatQuote.quote.networkFee ?? 0);
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=fiat-direct-musd.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fiat-direct-musd.cjs","sourceRoot":"","sources":["../../../src/strategy/fiat/fiat-direct-musd.ts"],"names":[],"mappings":"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","sourcesContent":["import { ORIGIN_METAMASK } from '@metamask/controller-utils';\nimport type { Quote as RampsQuote } from '@metamask/ramps-controller';\nimport { TransactionType } from '@metamask/transaction-controller';\nimport type { Hex } from '@metamask/utils';\nimport { createModuleLogger } from '@metamask/utils';\nimport { BigNumber } from 'bignumber.js';\n\nimport { TransactionPayStrategy } from '../../constants';\nimport { projectLogger } from '../../logger';\nimport type {\n PayStrategyExecuteRequest,\n PayStrategyGetQuotesRequest,\n TransactionFiatPayment,\n TransactionPayRequiredToken,\n TransactionPayQuote,\n} from '../../types';\nimport { getFiatVaultDisabled } from '../../utils/feature-flags';\nimport { getNetworkClientId } from '../../utils/provider';\nimport { buildCaipAssetType, getTokenInfo } from '../../utils/token';\nimport {\n collectTransactionIds,\n getTransaction,\n updateTransaction,\n waitForTransactionConfirmed,\n} from '../../utils/transaction';\nimport { MUSD_MONAD_FIAT_ASSET } from './constants';\nimport type { FiatQuote } from './types';\nimport {\n getRampsQuote,\n getRawSourceAmountFromOrderCryptoAmount,\n} from './utils';\n\nconst log = createModuleLogger(projectLogger, 'fiat-direct-musd');\n\n/**\n * Returns a direct mUSD fiat quote to the Money Account.\n *\n * @param options - Direct quote options.\n * @param options.amountFiat - Fiat amount entered by the user.\n * @param options.fiatPaymentMethod - Selected fiat payment method.\n * @param options.messenger - Controller messenger.\n * @param options.moneyAccountAddress - Money Account receiving the on-ramped mUSD.\n * @param options.requiredToken - Required token from the original Money Account transaction.\n * @param options.transactionId - Transaction ID for state updates and logs.\n * @returns Direct mUSD Fiat quote, or undefined when unavailable.\n */\nexport async function getDirectMusdFiatQuote({\n amountFiat,\n fiatPaymentMethod,\n messenger,\n moneyAccountAddress,\n requiredToken,\n transactionId,\n}: {\n amountFiat: string;\n fiatPaymentMethod: string;\n messenger: PayStrategyGetQuotesRequest['messenger'];\n moneyAccountAddress: Hex;\n requiredToken: TransactionPayRequiredToken;\n transactionId: string;\n}): Promise<TransactionPayQuote<FiatQuote> | undefined> {\n try {\n const adjustedAmount = Number(amountFiat);\n\n if (!Number.isFinite(adjustedAmount) || adjustedAmount <= 0) {\n throw new Error('Invalid fiat amount for direct mUSD quote');\n }\n\n const fiatQuote = await getRampsQuote({\n adjustedAmount,\n errorMessage: 'No matching ramps quote found for direct mUSD provider',\n fiatAsset: MUSD_MONAD_FIAT_ASSET,\n fiatPaymentMethod,\n messenger,\n walletAddress: moneyAccountAddress,\n });\n\n messenger.call('TransactionPayController:updateFiatPayment', {\n callback: (fiatPayment: TransactionFiatPayment) => {\n fiatPayment.rampsQuote = fiatQuote;\n fiatPayment.caipAssetId = buildCaipAssetType(\n MUSD_MONAD_FIAT_ASSET.chainId,\n MUSD_MONAD_FIAT_ASSET.address,\n );\n },\n transactionId,\n });\n\n log('Direct mUSD fiat quote flow', {\n amountFiat,\n moneyAccountAddress,\n transactionId,\n });\n\n return combineDirectMusdFiatQuote({\n amountFiat,\n fiatQuote,\n messenger,\n moneyAccountAddress,\n requiredToken,\n });\n } catch (error) {\n log('Direct mUSD fiat quote failed', { error, transactionId });\n return undefined;\n }\n}\n\n/**\n * Detects a direct mUSD Money Account quote from its stored request marker.\n *\n * @param quote - Quote to inspect.\n * @returns True when the quote originated from the direct mUSD fiat path.\n */\nexport function isDirectMusdMoneyAccountQuote(\n quote: Pick<TransactionPayQuote<unknown>, 'request'> | undefined,\n): boolean {\n return quote?.request.isDirectMusdMoneyAccount === true;\n}\n\n/**\n * Submits the direct mUSD Money Account vault batch after fiat settlement.\n *\n * @param options - Submit options.\n * @param options.request - Strategy execute request.\n * @param options.sourceAmountRaw - Settled source amount in raw mUSD units.\n * @param options.transaction - Original Money Account transaction.\n * @returns Hash of the final submitted child transaction, if available.\n */\nexport async function submitDirectMusdVaultDeposit({\n request,\n sourceAmountRaw,\n transaction,\n}: {\n request: PayStrategyExecuteRequest<FiatQuote>;\n sourceAmountRaw: string;\n transaction: PayStrategyExecuteRequest<FiatQuote>['transaction'];\n}): Promise<{ transactionHash?: Hex }> {\n const { messenger } = request;\n const transactionId = transaction.id;\n const moneyAccountAddress = transaction.txParams.from as Hex | undefined;\n\n if (!moneyAccountAddress) {\n throw new Error('Missing Money Account address for direct mUSD submit');\n }\n\n if (getFiatVaultDisabled(messenger)) {\n log('Skipping direct mUSD vault deposit because vaultDisabled is enabled', {\n moneyAccountAddress,\n sourceAmountRaw,\n transactionId,\n });\n\n return { transactionHash: '0x' };\n }\n\n const updatedTransaction =\n getTransaction(transactionId, messenger) ?? transaction;\n const { updates } = await messenger.call(\n 'TransactionPayController:getAmountData',\n {\n amount: sourceAmountRaw,\n transaction: updatedTransaction,\n },\n );\n\n if (!updates.length) {\n throw new Error('getAmountData returned no updates for direct mUSD submit');\n }\n\n const nestedTransactions = updatedTransaction.nestedTransactions?.map(\n (nestedTransaction) => ({ ...nestedTransaction }),\n );\n\n if (!nestedTransactions?.length) {\n throw new Error('Missing nested transactions for direct mUSD submit');\n }\n\n for (const { nestedTransactionIndex, data } of updates) {\n if (nestedTransactions[nestedTransactionIndex]) {\n nestedTransactions[nestedTransactionIndex].data = data;\n }\n }\n\n updateTransaction(\n { transactionId, messenger, note: 'Direct mUSD fiat: update vault amount' },\n (tx) => {\n for (const { nestedTransactionIndex, data } of updates) {\n if (tx.nestedTransactions?.[nestedTransactionIndex]) {\n tx.nestedTransactions[nestedTransactionIndex].data = data;\n }\n }\n\n if (tx.requiredAssets?.[0]) {\n tx.requiredAssets[0].amount = `0x${BigInt(sourceAmountRaw).toString(\n 16,\n )}`;\n }\n },\n );\n\n const networkClientId = getNetworkClientId(\n messenger,\n MUSD_MONAD_FIAT_ASSET.chainId,\n );\n const transactionIds: string[] = [];\n const { end } = collectTransactionIds(\n MUSD_MONAD_FIAT_ASSET.chainId,\n moneyAccountAddress,\n messenger,\n (id) => {\n transactionIds.push(id);\n updateTransaction(\n {\n transactionId,\n messenger,\n note: 'Add required transaction ID from direct mUSD vault submission',\n },\n (tx) => {\n tx.requiredTransactionIds ??= [];\n tx.requiredTransactionIds.push(id);\n },\n );\n },\n );\n\n log('Submitting direct mUSD vault deposit', {\n moneyAccountAddress,\n nestedTransactionCount: nestedTransactions.length,\n networkClientId,\n sourceAmountRaw,\n transactionId,\n });\n\n await messenger.call('TransactionController:addTransactionBatch', {\n from: moneyAccountAddress,\n isGasFeeSponsored: true,\n isInternal: true,\n networkClientId,\n origin: ORIGIN_METAMASK,\n requireApproval: false,\n transactions: nestedTransactions.map((nestedTransaction, index) => ({\n params: {\n data: nestedTransaction.data,\n to: nestedTransaction.to,\n value: nestedTransaction.value ?? '0x0',\n },\n type:\n index === 0\n ? (nestedTransaction.type ?? TransactionType.tokenMethodApprove)\n : TransactionType.contractInteraction,\n })),\n });\n\n end();\n\n log('Submitted direct mUSD vault deposit', {\n moneyAccountAddress,\n nestedTransactionCount: nestedTransactions.length,\n networkClientId,\n sourceAmountRaw,\n transactionId,\n transactionIds,\n });\n\n await Promise.all(\n transactionIds.map((id) => waitForTransactionConfirmed(id, messenger)),\n );\n\n const hash = getTransaction(transactionIds.slice(-1)[0], messenger)?.hash;\n\n log('Confirmed direct mUSD vault deposit', {\n hash,\n moneyAccountAddress,\n nestedTransactionCount: nestedTransactions.length,\n networkClientId,\n sourceAmountRaw,\n transactionId,\n transactionIds,\n });\n\n return { transactionHash: hash as Hex | undefined };\n}\n\nfunction combineDirectMusdFiatQuote({\n amountFiat,\n fiatQuote,\n messenger,\n moneyAccountAddress,\n requiredToken,\n}: {\n amountFiat: string;\n fiatQuote: RampsQuote;\n messenger: PayStrategyGetQuotesRequest['messenger'];\n moneyAccountAddress: Hex;\n requiredToken: TransactionPayRequiredToken;\n}): TransactionPayQuote<FiatQuote> {\n const tokenInfo = getTokenInfo(\n messenger,\n MUSD_MONAD_FIAT_ASSET.address,\n MUSD_MONAD_FIAT_ASSET.chainId,\n );\n\n if (!tokenInfo) {\n throw new Error('Unable to resolve mUSD token info for direct fiat quote');\n }\n\n const sourceAmountRaw = getRawSourceAmountFromOrderCryptoAmount({\n cryptoAmount: fiatQuote.quote.amountOut,\n decimals: tokenInfo.decimals,\n });\n const rampsProviderFee = getRampsProviderFee(fiatQuote).toString(10);\n const sourceAmountHuman = new BigNumber(sourceAmountRaw)\n .shiftedBy(-tokenInfo.decimals)\n .toString(10);\n\n return {\n dust: { fiat: '0', usd: '0' },\n estimatedDuration: 0,\n fees: {\n metaMask: { fiat: '0', usd: '0' },\n provider: { fiat: rampsProviderFee, usd: rampsProviderFee },\n providerFiat: { fiat: rampsProviderFee, usd: rampsProviderFee },\n sourceNetwork: {\n estimate: { fiat: '0', human: '0', raw: '0', usd: '0' },\n max: { fiat: '0', human: '0', raw: '0', usd: '0' },\n },\n targetNetwork: { fiat: '0', usd: '0' },\n },\n original: {\n rampsQuote: fiatQuote,\n relayQuote: undefined,\n },\n request: {\n from: moneyAccountAddress,\n isDirectMusdMoneyAccount: true,\n recipient: moneyAccountAddress,\n sourceBalanceRaw: sourceAmountRaw,\n sourceChainId: MUSD_MONAD_FIAT_ASSET.chainId,\n sourceTokenAddress: MUSD_MONAD_FIAT_ASSET.address,\n sourceTokenAmount: sourceAmountRaw,\n targetAmountMinimum: sourceAmountRaw,\n targetChainId: requiredToken.chainId,\n targetTokenAddress: requiredToken.address,\n },\n sourceAmount: {\n fiat: amountFiat,\n human: sourceAmountHuman,\n raw: sourceAmountRaw,\n usd: amountFiat,\n },\n strategy: TransactionPayStrategy.Fiat,\n targetAmount: { fiat: amountFiat, usd: amountFiat },\n };\n}\n\nfunction getRampsProviderFee(fiatQuote: RampsQuote): BigNumber {\n return new BigNumber(fiatQuote.quote.providerFee ?? 0).plus(\n fiatQuote.quote.networkFee ?? 0,\n );\n}\n"]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { Hex } from "@metamask/utils";
|
|
2
|
+
import type { PayStrategyExecuteRequest, PayStrategyGetQuotesRequest, TransactionPayRequiredToken, TransactionPayQuote } from "../../types.cjs";
|
|
3
|
+
import type { FiatQuote } from "./types.cjs";
|
|
4
|
+
/**
|
|
5
|
+
* Returns a direct mUSD fiat quote to the Money Account.
|
|
6
|
+
*
|
|
7
|
+
* @param options - Direct quote options.
|
|
8
|
+
* @param options.amountFiat - Fiat amount entered by the user.
|
|
9
|
+
* @param options.fiatPaymentMethod - Selected fiat payment method.
|
|
10
|
+
* @param options.messenger - Controller messenger.
|
|
11
|
+
* @param options.moneyAccountAddress - Money Account receiving the on-ramped mUSD.
|
|
12
|
+
* @param options.requiredToken - Required token from the original Money Account transaction.
|
|
13
|
+
* @param options.transactionId - Transaction ID for state updates and logs.
|
|
14
|
+
* @returns Direct mUSD Fiat quote, or undefined when unavailable.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getDirectMusdFiatQuote({ amountFiat, fiatPaymentMethod, messenger, moneyAccountAddress, requiredToken, transactionId, }: {
|
|
17
|
+
amountFiat: string;
|
|
18
|
+
fiatPaymentMethod: string;
|
|
19
|
+
messenger: PayStrategyGetQuotesRequest['messenger'];
|
|
20
|
+
moneyAccountAddress: Hex;
|
|
21
|
+
requiredToken: TransactionPayRequiredToken;
|
|
22
|
+
transactionId: string;
|
|
23
|
+
}): Promise<TransactionPayQuote<FiatQuote> | undefined>;
|
|
24
|
+
/**
|
|
25
|
+
* Detects a direct mUSD Money Account quote from its stored request marker.
|
|
26
|
+
*
|
|
27
|
+
* @param quote - Quote to inspect.
|
|
28
|
+
* @returns True when the quote originated from the direct mUSD fiat path.
|
|
29
|
+
*/
|
|
30
|
+
export declare function isDirectMusdMoneyAccountQuote(quote: Pick<TransactionPayQuote<unknown>, 'request'> | undefined): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Submits the direct mUSD Money Account vault batch after fiat settlement.
|
|
33
|
+
*
|
|
34
|
+
* @param options - Submit options.
|
|
35
|
+
* @param options.request - Strategy execute request.
|
|
36
|
+
* @param options.sourceAmountRaw - Settled source amount in raw mUSD units.
|
|
37
|
+
* @param options.transaction - Original Money Account transaction.
|
|
38
|
+
* @returns Hash of the final submitted child transaction, if available.
|
|
39
|
+
*/
|
|
40
|
+
export declare function submitDirectMusdVaultDeposit({ request, sourceAmountRaw, transaction, }: {
|
|
41
|
+
request: PayStrategyExecuteRequest<FiatQuote>;
|
|
42
|
+
sourceAmountRaw: string;
|
|
43
|
+
transaction: PayStrategyExecuteRequest<FiatQuote>['transaction'];
|
|
44
|
+
}): Promise<{
|
|
45
|
+
transactionHash?: Hex;
|
|
46
|
+
}>;
|
|
47
|
+
//# sourceMappingURL=fiat-direct-musd.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fiat-direct-musd.d.cts","sourceRoot":"","sources":["../../../src/strategy/fiat/fiat-direct-musd.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAM3C,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAE3B,2BAA2B,EAC3B,mBAAmB,EACpB,wBAAoB;AAWrB,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAgB;AAQzC;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,EAAE;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,2BAA2B,CAAC,WAAW,CAAC,CAAC;IACpD,mBAAmB,EAAE,GAAG,CAAC;IACzB,aAAa,EAAE,2BAA2B,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CA6CtD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,GAAG,SAAS,GAC/D,OAAO,CAET;AAED;;;;;;;;GAQG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,OAAO,EACP,eAAe,EACf,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;CAClE,GAAG,OAAO,CAAC;IAAE,eAAe,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAiJrC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { Hex } from "@metamask/utils";
|
|
2
|
+
import type { PayStrategyExecuteRequest, PayStrategyGetQuotesRequest, TransactionPayRequiredToken, TransactionPayQuote } from "../../types.mjs";
|
|
3
|
+
import type { FiatQuote } from "./types.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* Returns a direct mUSD fiat quote to the Money Account.
|
|
6
|
+
*
|
|
7
|
+
* @param options - Direct quote options.
|
|
8
|
+
* @param options.amountFiat - Fiat amount entered by the user.
|
|
9
|
+
* @param options.fiatPaymentMethod - Selected fiat payment method.
|
|
10
|
+
* @param options.messenger - Controller messenger.
|
|
11
|
+
* @param options.moneyAccountAddress - Money Account receiving the on-ramped mUSD.
|
|
12
|
+
* @param options.requiredToken - Required token from the original Money Account transaction.
|
|
13
|
+
* @param options.transactionId - Transaction ID for state updates and logs.
|
|
14
|
+
* @returns Direct mUSD Fiat quote, or undefined when unavailable.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getDirectMusdFiatQuote({ amountFiat, fiatPaymentMethod, messenger, moneyAccountAddress, requiredToken, transactionId, }: {
|
|
17
|
+
amountFiat: string;
|
|
18
|
+
fiatPaymentMethod: string;
|
|
19
|
+
messenger: PayStrategyGetQuotesRequest['messenger'];
|
|
20
|
+
moneyAccountAddress: Hex;
|
|
21
|
+
requiredToken: TransactionPayRequiredToken;
|
|
22
|
+
transactionId: string;
|
|
23
|
+
}): Promise<TransactionPayQuote<FiatQuote> | undefined>;
|
|
24
|
+
/**
|
|
25
|
+
* Detects a direct mUSD Money Account quote from its stored request marker.
|
|
26
|
+
*
|
|
27
|
+
* @param quote - Quote to inspect.
|
|
28
|
+
* @returns True when the quote originated from the direct mUSD fiat path.
|
|
29
|
+
*/
|
|
30
|
+
export declare function isDirectMusdMoneyAccountQuote(quote: Pick<TransactionPayQuote<unknown>, 'request'> | undefined): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Submits the direct mUSD Money Account vault batch after fiat settlement.
|
|
33
|
+
*
|
|
34
|
+
* @param options - Submit options.
|
|
35
|
+
* @param options.request - Strategy execute request.
|
|
36
|
+
* @param options.sourceAmountRaw - Settled source amount in raw mUSD units.
|
|
37
|
+
* @param options.transaction - Original Money Account transaction.
|
|
38
|
+
* @returns Hash of the final submitted child transaction, if available.
|
|
39
|
+
*/
|
|
40
|
+
export declare function submitDirectMusdVaultDeposit({ request, sourceAmountRaw, transaction, }: {
|
|
41
|
+
request: PayStrategyExecuteRequest<FiatQuote>;
|
|
42
|
+
sourceAmountRaw: string;
|
|
43
|
+
transaction: PayStrategyExecuteRequest<FiatQuote>['transaction'];
|
|
44
|
+
}): Promise<{
|
|
45
|
+
transactionHash?: Hex;
|
|
46
|
+
}>;
|
|
47
|
+
//# sourceMappingURL=fiat-direct-musd.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fiat-direct-musd.d.mts","sourceRoot":"","sources":["../../../src/strategy/fiat/fiat-direct-musd.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAM3C,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAE3B,2BAA2B,EAC3B,mBAAmB,EACpB,wBAAoB;AAWrB,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAgB;AAQzC;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,EAAE;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,2BAA2B,CAAC,WAAW,CAAC,CAAC;IACpD,mBAAmB,EAAE,GAAG,CAAC;IACzB,aAAa,EAAE,2BAA2B,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CA6CtD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,GAAG,SAAS,GAC/D,OAAO,CAET;AAED;;;;;;;;GAQG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,OAAO,EACP,eAAe,EACf,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;CAClE,GAAG,OAAO,CAAC;IAAE,eAAe,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAiJrC"}
|