@metamask/connect-multichain 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/dist/browser/es/connect-multichain.d.mts +11 -2
  3. package/dist/browser/es/connect-multichain.mjs +111 -14
  4. package/dist/browser/es/connect-multichain.mjs.map +1 -1
  5. package/dist/browser/es/metafile-esm.json +1 -1
  6. package/dist/browser/iife/connect-multichain.d.ts +11 -2
  7. package/dist/browser/iife/connect-multichain.js +110 -13
  8. package/dist/browser/iife/connect-multichain.js.map +1 -1
  9. package/dist/browser/iife/metafile-iife.json +1 -1
  10. package/dist/browser/umd/connect-multichain.d.ts +11 -2
  11. package/dist/browser/umd/connect-multichain.js +119 -22
  12. package/dist/browser/umd/connect-multichain.js.map +1 -1
  13. package/dist/browser/umd/metafile-cjs.json +1 -1
  14. package/dist/node/cjs/connect-multichain.d.ts +11 -2
  15. package/dist/node/cjs/connect-multichain.js +119 -22
  16. package/dist/node/cjs/connect-multichain.js.map +1 -1
  17. package/dist/node/cjs/metafile-cjs.json +1 -1
  18. package/dist/node/es/connect-multichain.d.mts +11 -2
  19. package/dist/node/es/connect-multichain.mjs +111 -14
  20. package/dist/node/es/connect-multichain.mjs.map +1 -1
  21. package/dist/node/es/metafile-esm.json +1 -1
  22. package/dist/react-native/es/connect-multichain.d.mts +11 -2
  23. package/dist/react-native/es/connect-multichain.mjs +111 -14
  24. package/dist/react-native/es/connect-multichain.mjs.map +1 -1
  25. package/dist/react-native/es/metafile-esm.json +1 -1
  26. package/dist/src/domain/errors/rpc.d.ts +11 -1
  27. package/dist/src/domain/errors/rpc.d.ts.map +1 -1
  28. package/dist/src/domain/errors/rpc.js +10 -2
  29. package/dist/src/domain/errors/rpc.js.map +1 -1
  30. package/dist/src/multichain/rpc/invocationError.d.ts +9 -0
  31. package/dist/src/multichain/rpc/invocationError.d.ts.map +1 -0
  32. package/dist/src/multichain/rpc/invocationError.js +99 -0
  33. package/dist/src/multichain/rpc/invocationError.js.map +1 -0
  34. package/dist/src/multichain/rpc/requestRouter.d.ts.map +1 -1
  35. package/dist/src/multichain/rpc/requestRouter.js +10 -18
  36. package/dist/src/multichain/rpc/requestRouter.js.map +1 -1
  37. package/dist/src/multichain/transports/default/index.d.ts.map +1 -1
  38. package/dist/src/multichain/transports/default/index.js +9 -0
  39. package/dist/src/multichain/transports/default/index.js.map +1 -1
  40. package/dist/src/multichain/transports/mwp/index.d.ts.map +1 -1
  41. package/dist/src/multichain/transports/mwp/index.js +9 -3
  42. package/dist/src/multichain/transports/mwp/index.js.map +1 -1
  43. package/dist/types/connect-multichain.d.ts +11 -2
  44. package/package.json +1 -1
@@ -1 +1 @@
1
- {"inputs":{"src/domain/errors/base.ts":{"bytes":387,"imports":[],"format":"esm"},"src/domain/errors/rpc.ts":{"bytes":1459,"imports":[{"path":"src/domain/errors/base.ts","kind":"import-statement","original":"./base"}],"format":"esm"},"src/domain/errors/index.ts":{"bytes":53,"imports":[{"path":"src/domain/errors/rpc.ts","kind":"import-statement","original":"./rpc"}],"format":"esm"},"src/domain/events/index.ts":{"bytes":4099,"imports":[{"path":"eventemitter3","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/logger/index.ts":{"bytes":3283,"imports":[{"path":"debug","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/multichain/api/constants.ts":{"bytes":6157,"imports":[],"format":"esm"},"src/domain/multichain/api/infura.ts":{"bytes":947,"imports":[{"path":"src/domain/multichain/api/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/domain/multichain/index.ts":{"bytes":4344,"imports":[{"path":"src/domain/events/index.ts","kind":"import-statement","original":"../events"},{"path":"src/domain/multichain/api/constants.ts","kind":"import-statement","original":"./api/constants"},{"path":"src/domain/multichain/api/infura.ts","kind":"import-statement","original":"./api/infura"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/platform/index.ts":{"bytes":4534,"imports":[{"path":"bowser","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/store/adapter.ts":{"bytes":485,"imports":[],"format":"esm"},"src/domain/store/client.ts":{"bytes":727,"imports":[],"format":"esm"},"src/domain/store/index.ts":{"bytes":53,"imports":[{"path":"src/domain/store/adapter.ts","kind":"import-statement","original":"./adapter"},{"path":"src/domain/store/client.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"src/domain/ui/types.ts":{"bytes":2306,"imports":[],"format":"esm"},"src/domain/ui/index.ts":{"bytes":57,"imports":[{"path":"src/domain/ui/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/multichain/utils/index.ts":{"bytes":14504,"imports":[{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"pako","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/utils/analytics.ts":{"bytes":16518,"imports":[{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"."},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/utils/index.ts":{"bytes":848,"imports":[{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"../../multichain/utils/analytics"}],"format":"esm"},"src/domain/index.ts":{"bytes":208,"imports":[{"path":"src/domain/errors/index.ts","kind":"import-statement","original":"./errors"},{"path":"src/domain/events/index.ts","kind":"import-statement","original":"./events"},{"path":"src/domain/logger/index.ts","kind":"import-statement","original":"./logger"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"./multichain"},{"path":"src/domain/platform/index.ts","kind":"import-statement","original":"./platform"},{"path":"src/domain/store/index.ts","kind":"import-statement","original":"./store"},{"path":"src/domain/ui/index.ts","kind":"import-statement","original":"./ui"},{"path":"src/domain/utils/index.ts","kind":"import-statement","original":"./utils"}],"format":"esm"},"src/config/index.ts":{"bytes":232,"imports":[],"format":"esm"},"src/multichain/rpc/handlers/rpcClient.ts":{"bytes":3662,"imports":[{"path":"cross-fetch","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/rpc/requestRouter.ts":{"bytes":9137,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../utils"},{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"../utils/analytics"},{"path":"src/multichain/rpc/handlers/rpcClient.ts","kind":"import-statement","original":"./handlers/rpcClient"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/default/index.ts":{"bytes":10377,"imports":[{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytes":6030,"imports":[{"path":"@metamask/rpc-errors","kind":"import-statement","external":true},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/constants.ts":{"bytes":145,"imports":[],"format":"esm"},"src/multichain/transports/mwp/index.ts":{"bytes":31546,"imports":[{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/rpc-errors","kind":"import-statement","external":true},{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"src/multichain/transports/constants.ts","kind":"import-statement","original":"../constants"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/mwp/KeyManager.ts":{"bytes":1818,"imports":[{"path":"eciesjs","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/index.ts":{"bytes":37678,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../domain"},{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"./utils/analytics"},{"path":"src/domain/logger/index.ts","kind":"import-statement","original":"../domain/logger"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"../domain/multichain"},{"path":"src/domain/platform/index.ts","kind":"import-statement","original":"../domain/platform"},{"path":"src/multichain/rpc/handlers/rpcClient.ts","kind":"import-statement","original":"./rpc/handlers/rpcClient"},{"path":"src/multichain/rpc/requestRouter.ts","kind":"import-statement","original":"./rpc/requestRouter"},{"path":"src/multichain/transports/default/index.ts","kind":"import-statement","original":"./transports/default"},{"path":"src/multichain/transports/multichainApiClientWrapper/index.ts","kind":"import-statement","original":"./transports/multichainApiClientWrapper"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"./utils"},{"path":"src/domain/multichain/api/infura.ts","kind":"import-statement","original":"../domain/multichain/api/infura"},{"path":"src/multichain/transports/mwp/index.ts","kind":"dynamic-import","original":"./transports/mwp"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"dynamic-import","external":true},{"path":"src/multichain/transports/mwp/KeyManager.ts","kind":"dynamic-import","original":"./transports/mwp/KeyManager"},{"path":"ws","kind":"dynamic-import","external":true},{"path":"src/multichain/transports/mwp/index.ts","kind":"dynamic-import","original":"./transports/mwp"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/errors/storage.ts":{"bytes":1351,"imports":[{"path":"src/domain/errors/base.ts","kind":"import-statement","original":"./base"}],"format":"esm"},"src/store/index.ts":{"bytes":3397,"imports":[{"path":"uuid","kind":"import-statement","external":true},{"path":"src/domain/errors/storage.ts","kind":"import-statement","original":"../domain/errors/storage"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"../domain/multichain"},{"path":"src/domain/store/client.ts","kind":"import-statement","original":"../domain/store/client"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/ModalFactory.ts":{"bytes":6495,"imports":[{"path":"@metamask/onboarding","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../multichain/utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/index.ts":{"bytes":994,"imports":[{"path":"src/ui/ModalFactory.ts","kind":"import-statement","original":"./ModalFactory"},{"path":"@metamask/multichain-ui/loader","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/modals/base/utils.ts":{"bytes":1303,"imports":[],"format":"esm"},"src/ui/modals/base/AbstractInstallModal.ts":{"bytes":3582,"imports":[{"path":"src/ui/modals/base/utils.ts","kind":"import-statement","original":"./utils"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/modals/node/install.ts":{"bytes":1866,"imports":[{"path":"@paulmillr/qr","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"src/ui/modals/base/AbstractInstallModal.ts","kind":"import-statement","original":"../base/AbstractInstallModal"},{"path":"src/ui/modals/base/utils.ts","kind":"import-statement","original":"../base/utils"}],"format":"esm"},"src/ui/modals/base/AbstractOTPModal.ts":{"bytes":451,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"}],"format":"esm"},"src/ui/modals/node/otp.ts":{"bytes":395,"imports":[{"path":"src/ui/modals/base/AbstractOTPModal.ts","kind":"import-statement","original":"../base/AbstractOTPModal"}],"format":"esm"},"src/ui/modals/node/index.ts":{"bytes":80,"imports":[{"path":"src/ui/modals/node/install.ts","kind":"import-statement","original":"./install"},{"path":"src/ui/modals/node/otp.ts","kind":"import-statement","original":"./otp"}],"format":"esm"},"src/store/adapters/node.ts":{"bytes":458,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/index.node.ts":{"bytes":888,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"./domain"},{"path":"src/multichain/index.ts","kind":"import-statement","original":"./multichain"},{"path":"src/store/index.ts","kind":"import-statement","original":"./store"},{"path":"src/ui/index.ts","kind":"import-statement","original":"./ui"},{"path":"src/domain/index.ts","kind":"import-statement","original":"./domain"},{"path":"src/ui/modals/node/index.ts","kind":"dynamic-import","original":"./ui/modals/node"},{"path":"src/store/adapters/node.ts","kind":"dynamic-import","original":"./store/adapters/node"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/node/cjs/connect-multichain.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":263847},"dist/node/cjs/connect-multichain.js":{"imports":[{"path":"eventemitter3","kind":"require-call","external":true},{"path":"debug","kind":"require-call","external":true},{"path":"bowser","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"pako","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"eciesjs","kind":"dynamic-import","external":true},{"path":"@paulmillr/qr","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"cross-fetch","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"dynamic-import","external":true},{"path":"ws","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"uuid","kind":"require-call","external":true},{"path":"@metamask/onboarding","kind":"require-call","external":true},{"path":"@metamask/multichain-ui/loader","kind":"dynamic-import","external":true}],"exports":[],"entryPoint":"src/index.node.ts","inputs":{"src/domain/errors/base.ts":{"bytesInOutput":265},"src/domain/errors/rpc.ts":{"bytesInOutput":1952},"src/domain/errors/index.ts":{"bytesInOutput":103},"src/domain/events/index.ts":{"bytesInOutput":3344},"src/domain/logger/index.ts":{"bytesInOutput":1128},"src/domain/multichain/api/constants.ts":{"bytesInOutput":6218},"src/domain/multichain/api/infura.ts":{"bytesInOutput":458},"src/domain/multichain/index.ts":{"bytesInOutput":3177},"src/domain/platform/index.ts":{"bytesInOutput":4176},"src/domain/store/adapter.ts":{"bytesInOutput":210},"src/domain/store/client.ts":{"bytesInOutput":137},"src/domain/store/index.ts":{"bytesInOutput":124},"src/domain/ui/types.ts":{"bytesInOutput":994},"src/domain/ui/index.ts":{"bytesInOutput":97},"src/multichain/utils/index.ts":{"bytesInOutput":9403},"src/multichain/utils/analytics.ts":{"bytesInOutput":6836},"src/domain/utils/index.ts":{"bytesInOutput":229},"src/domain/index.ts":{"bytesInOutput":233},"src/multichain/transports/constants.ts":{"bytesInOutput":210},"src/multichain/transports/mwp/index.ts":{"bytesInOutput":28404},"src/multichain/transports/mwp/KeyManager.ts":{"bytesInOutput":1356},"src/ui/modals/base/utils.ts":{"bytesInOutput":640},"src/ui/modals/base/AbstractInstallModal.ts":{"bytesInOutput":3328},"src/ui/modals/node/install.ts":{"bytesInOutput":1763},"src/ui/modals/base/AbstractOTPModal.ts":{"bytesInOutput":470},"src/ui/modals/node/otp.ts":{"bytesInOutput":243},"src/ui/modals/node/index.ts":{"bytesInOutput":245},"src/store/adapters/node.ts":{"bytesInOutput":962},"src/index.node.ts":{"bytesInOutput":2191},"src/multichain/index.ts":{"bytesInOutput":36381},"src/config/index.ts":{"bytesInOutput":202},"src/multichain/rpc/handlers/rpcClient.ts":{"bytesInOutput":3029},"src/multichain/rpc/requestRouter.ts":{"bytesInOutput":7233},"src/multichain/transports/default/index.ts":{"bytesInOutput":10289},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytesInOutput":6155},"src/store/index.ts":{"bytesInOutput":3397},"src/domain/errors/storage.ts":{"bytesInOutput":1201},"src/ui/ModalFactory.ts":{"bytesInOutput":5292},"src/ui/index.ts":{"bytesInOutput":504}},"bytes":158319}}}
1
+ {"inputs":{"src/domain/errors/base.ts":{"bytes":387,"imports":[],"format":"esm"},"src/domain/errors/rpc.ts":{"bytes":2003,"imports":[{"path":"src/domain/errors/base.ts","kind":"import-statement","original":"./base"}],"format":"esm"},"src/domain/errors/index.ts":{"bytes":53,"imports":[{"path":"src/domain/errors/rpc.ts","kind":"import-statement","original":"./rpc"}],"format":"esm"},"src/domain/events/index.ts":{"bytes":4099,"imports":[{"path":"eventemitter3","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/logger/index.ts":{"bytes":3283,"imports":[{"path":"debug","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/multichain/api/constants.ts":{"bytes":6157,"imports":[],"format":"esm"},"src/domain/multichain/api/infura.ts":{"bytes":947,"imports":[{"path":"src/domain/multichain/api/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/domain/multichain/index.ts":{"bytes":4344,"imports":[{"path":"src/domain/events/index.ts","kind":"import-statement","original":"../events"},{"path":"src/domain/multichain/api/constants.ts","kind":"import-statement","original":"./api/constants"},{"path":"src/domain/multichain/api/infura.ts","kind":"import-statement","original":"./api/infura"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/platform/index.ts":{"bytes":4534,"imports":[{"path":"bowser","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/store/adapter.ts":{"bytes":485,"imports":[],"format":"esm"},"src/domain/store/client.ts":{"bytes":727,"imports":[],"format":"esm"},"src/domain/store/index.ts":{"bytes":53,"imports":[{"path":"src/domain/store/adapter.ts","kind":"import-statement","original":"./adapter"},{"path":"src/domain/store/client.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"src/domain/ui/types.ts":{"bytes":2306,"imports":[],"format":"esm"},"src/domain/ui/index.ts":{"bytes":57,"imports":[{"path":"src/domain/ui/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/multichain/utils/index.ts":{"bytes":14504,"imports":[{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"pako","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/utils/analytics.ts":{"bytes":16518,"imports":[{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"."},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/utils/index.ts":{"bytes":848,"imports":[{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"../../multichain/utils/analytics"}],"format":"esm"},"src/domain/index.ts":{"bytes":208,"imports":[{"path":"src/domain/errors/index.ts","kind":"import-statement","original":"./errors"},{"path":"src/domain/events/index.ts","kind":"import-statement","original":"./events"},{"path":"src/domain/logger/index.ts","kind":"import-statement","original":"./logger"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"./multichain"},{"path":"src/domain/platform/index.ts","kind":"import-statement","original":"./platform"},{"path":"src/domain/store/index.ts","kind":"import-statement","original":"./store"},{"path":"src/domain/ui/index.ts","kind":"import-statement","original":"./ui"},{"path":"src/domain/utils/index.ts","kind":"import-statement","original":"./utils"}],"format":"esm"},"src/config/index.ts":{"bytes":232,"imports":[],"format":"esm"},"src/multichain/rpc/handlers/rpcClient.ts":{"bytes":3662,"imports":[{"path":"cross-fetch","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/rpc/invocationError.ts":{"bytes":4617,"imports":[{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/rpc/requestRouter.ts":{"bytes":8931,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../utils"},{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"../utils/analytics"},{"path":"src/multichain/rpc/handlers/rpcClient.ts","kind":"import-statement","original":"./handlers/rpcClient"},{"path":"src/multichain/rpc/invocationError.ts","kind":"import-statement","original":"./invocationError"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/default/index.ts":{"bytes":10849,"imports":[{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytes":6030,"imports":[{"path":"@metamask/rpc-errors","kind":"import-statement","external":true},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/constants.ts":{"bytes":145,"imports":[],"format":"esm"},"src/multichain/transports/mwp/index.ts":{"bytes":31981,"imports":[{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/rpc-errors","kind":"import-statement","external":true},{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../../utils"},{"path":"src/multichain/transports/constants.ts","kind":"import-statement","original":"../constants"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/mwp/KeyManager.ts":{"bytes":1818,"imports":[{"path":"eciesjs","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/index.ts":{"bytes":37678,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/utils","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../domain"},{"path":"src/multichain/utils/analytics.ts","kind":"import-statement","original":"./utils/analytics"},{"path":"src/domain/logger/index.ts","kind":"import-statement","original":"../domain/logger"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"../domain/multichain"},{"path":"src/domain/platform/index.ts","kind":"import-statement","original":"../domain/platform"},{"path":"src/multichain/rpc/handlers/rpcClient.ts","kind":"import-statement","original":"./rpc/handlers/rpcClient"},{"path":"src/multichain/rpc/requestRouter.ts","kind":"import-statement","original":"./rpc/requestRouter"},{"path":"src/multichain/transports/default/index.ts","kind":"import-statement","original":"./transports/default"},{"path":"src/multichain/transports/multichainApiClientWrapper/index.ts","kind":"import-statement","original":"./transports/multichainApiClientWrapper"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"./utils"},{"path":"src/domain/multichain/api/infura.ts","kind":"import-statement","original":"../domain/multichain/api/infura"},{"path":"src/multichain/transports/mwp/index.ts","kind":"dynamic-import","original":"./transports/mwp"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"dynamic-import","external":true},{"path":"src/multichain/transports/mwp/KeyManager.ts","kind":"dynamic-import","original":"./transports/mwp/KeyManager"},{"path":"ws","kind":"dynamic-import","external":true},{"path":"src/multichain/transports/mwp/index.ts","kind":"dynamic-import","original":"./transports/mwp"},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/domain/errors/storage.ts":{"bytes":1351,"imports":[{"path":"src/domain/errors/base.ts","kind":"import-statement","original":"./base"}],"format":"esm"},"src/store/index.ts":{"bytes":3397,"imports":[{"path":"uuid","kind":"import-statement","external":true},{"path":"src/domain/errors/storage.ts","kind":"import-statement","original":"../domain/errors/storage"},{"path":"src/domain/multichain/index.ts","kind":"import-statement","original":"../domain/multichain"},{"path":"src/domain/store/client.ts","kind":"import-statement","original":"../domain/store/client"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/ModalFactory.ts":{"bytes":6495,"imports":[{"path":"@metamask/onboarding","kind":"import-statement","external":true},{"path":"src/config/index.ts","kind":"import-statement","original":"../config"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../domain"},{"path":"src/multichain/utils/index.ts","kind":"import-statement","original":"../multichain/utils"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/index.ts":{"bytes":994,"imports":[{"path":"src/ui/ModalFactory.ts","kind":"import-statement","original":"./ModalFactory"},{"path":"@metamask/multichain-ui/loader","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/modals/base/utils.ts":{"bytes":1303,"imports":[],"format":"esm"},"src/ui/modals/base/AbstractInstallModal.ts":{"bytes":3582,"imports":[{"path":"src/ui/modals/base/utils.ts","kind":"import-statement","original":"./utils"},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/ui/modals/node/install.ts":{"bytes":1866,"imports":[{"path":"@paulmillr/qr","kind":"import-statement","external":true},{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"},{"path":"src/ui/modals/base/AbstractInstallModal.ts","kind":"import-statement","original":"../base/AbstractInstallModal"},{"path":"src/ui/modals/base/utils.ts","kind":"import-statement","original":"../base/utils"}],"format":"esm"},"src/ui/modals/base/AbstractOTPModal.ts":{"bytes":451,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"../../../domain"}],"format":"esm"},"src/ui/modals/node/otp.ts":{"bytes":395,"imports":[{"path":"src/ui/modals/base/AbstractOTPModal.ts","kind":"import-statement","original":"../base/AbstractOTPModal"}],"format":"esm"},"src/ui/modals/node/index.ts":{"bytes":80,"imports":[{"path":"src/ui/modals/node/install.ts","kind":"import-statement","original":"./install"},{"path":"src/ui/modals/node/otp.ts","kind":"import-statement","original":"./otp"}],"format":"esm"},"src/store/adapters/node.ts":{"bytes":458,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"../../domain"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/index.node.ts":{"bytes":888,"imports":[{"path":"src/domain/index.ts","kind":"import-statement","original":"./domain"},{"path":"src/multichain/index.ts","kind":"import-statement","original":"./multichain"},{"path":"src/store/index.ts","kind":"import-statement","original":"./store"},{"path":"src/ui/index.ts","kind":"import-statement","original":"./ui"},{"path":"src/domain/index.ts","kind":"import-statement","original":"./domain"},{"path":"src/ui/modals/node/index.ts","kind":"dynamic-import","original":"./ui/modals/node"},{"path":"src/store/adapters/node.ts","kind":"dynamic-import","original":"./store/adapters/node"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/node/cjs/connect-multichain.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":272060},"dist/node/cjs/connect-multichain.js":{"imports":[{"path":"eventemitter3","kind":"require-call","external":true},{"path":"debug","kind":"require-call","external":true},{"path":"bowser","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"pako","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"eciesjs","kind":"dynamic-import","external":true},{"path":"@paulmillr/qr","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"cross-fetch","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/utils","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"dynamic-import","external":true},{"path":"ws","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"dynamic-import","external":true},{"path":"uuid","kind":"require-call","external":true},{"path":"@metamask/onboarding","kind":"require-call","external":true},{"path":"@metamask/multichain-ui/loader","kind":"dynamic-import","external":true}],"exports":[],"entryPoint":"src/index.node.ts","inputs":{"src/domain/errors/base.ts":{"bytesInOutput":265},"src/domain/errors/rpc.ts":{"bytesInOutput":2487},"src/domain/errors/index.ts":{"bytesInOutput":103},"src/domain/events/index.ts":{"bytesInOutput":3344},"src/domain/logger/index.ts":{"bytesInOutput":1128},"src/domain/multichain/api/constants.ts":{"bytesInOutput":6218},"src/domain/multichain/api/infura.ts":{"bytesInOutput":458},"src/domain/multichain/index.ts":{"bytesInOutput":3177},"src/domain/platform/index.ts":{"bytesInOutput":4176},"src/domain/store/adapter.ts":{"bytesInOutput":210},"src/domain/store/client.ts":{"bytesInOutput":137},"src/domain/store/index.ts":{"bytesInOutput":124},"src/domain/ui/types.ts":{"bytesInOutput":994},"src/domain/ui/index.ts":{"bytesInOutput":97},"src/multichain/utils/index.ts":{"bytesInOutput":9403},"src/multichain/utils/analytics.ts":{"bytesInOutput":6836},"src/domain/utils/index.ts":{"bytesInOutput":229},"src/domain/index.ts":{"bytesInOutput":233},"src/multichain/transports/constants.ts":{"bytesInOutput":210},"src/multichain/transports/mwp/index.ts":{"bytesInOutput":28541},"src/multichain/transports/mwp/KeyManager.ts":{"bytesInOutput":1356},"src/ui/modals/base/utils.ts":{"bytesInOutput":640},"src/ui/modals/base/AbstractInstallModal.ts":{"bytesInOutput":3328},"src/ui/modals/node/install.ts":{"bytesInOutput":1763},"src/ui/modals/base/AbstractOTPModal.ts":{"bytesInOutput":470},"src/ui/modals/node/otp.ts":{"bytesInOutput":243},"src/ui/modals/node/index.ts":{"bytesInOutput":245},"src/store/adapters/node.ts":{"bytesInOutput":962},"src/index.node.ts":{"bytesInOutput":2191},"src/multichain/index.ts":{"bytesInOutput":36381},"src/config/index.ts":{"bytesInOutput":202},"src/multichain/rpc/handlers/rpcClient.ts":{"bytesInOutput":3029},"src/multichain/rpc/requestRouter.ts":{"bytesInOutput":7217},"src/multichain/rpc/invocationError.ts":{"bytesInOutput":3164},"src/multichain/transports/default/index.ts":{"bytesInOutput":10440},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytesInOutput":6155},"src/store/index.ts":{"bytesInOutput":3397},"src/domain/errors/storage.ts":{"bytesInOutput":1201},"src/ui/ModalFactory.ts":{"bytesInOutput":5292},"src/ui/index.ts":{"bytesInOutput":504}},"bytes":162372}}}
@@ -1,7 +1,7 @@
1
+ import { Json, CaipAccountId, CaipChainId } from '@metamask/utils';
1
2
  import debug from 'debug';
2
3
  import { SessionData, Transport, SessionProperties, TransportRequest, TransportResponse, MultichainApiClient } from '@metamask/multichain-api-client';
3
4
  export { SessionData } from '@metamask/multichain-api-client';
4
- import { CaipAccountId, CaipChainId, Json } from '@metamask/utils';
5
5
  import { SessionRequest, Session } from '@metamask/mobile-wallet-protocol-core';
6
6
  import { Components } from '@metamask/multichain-ui';
7
7
 
@@ -39,8 +39,17 @@ declare class RPCInvokeMethodErr extends BaseErr<'RPC', RPCErrorCodes> {
39
39
  readonly reason: string;
40
40
  readonly rpcCode?: number | undefined;
41
41
  readonly rpcMessage?: string | undefined;
42
+ readonly rpcData?: Json | undefined;
42
43
  static readonly code = 53;
43
- constructor(reason: string, rpcCode?: number | undefined, rpcMessage?: string | undefined);
44
+ /**
45
+ * @param reason - MetaMask Connect invokeMethod reason.
46
+ * @param rpcCode - Original wallet JSON-RPC / EIP-1193 error code.
47
+ * @param rpcMessage - Original provider-facing wallet message, sourced only
48
+ * from the wallet's coded error. Unset when the wallet provides no message,
49
+ * so it may differ from `reason`, which can fall back through the cause chain.
50
+ * @param rpcData - Original JSON-RPC error data, when provided by the wallet.
51
+ */
52
+ constructor(reason: string, rpcCode?: number | undefined, rpcMessage?: string | undefined, rpcData?: Json | undefined);
44
53
  }
45
54
 
46
55
  type SDKEvents = {
@@ -112,7 +112,15 @@ var init_rpc = __esm({
112
112
  _RPCReadonlyRequestErr.code = 52;
113
113
  RPCReadonlyRequestErr = _RPCReadonlyRequestErr;
114
114
  _RPCInvokeMethodErr = class _RPCInvokeMethodErr extends BaseErr {
115
- constructor(reason, rpcCode, rpcMessage) {
115
+ /**
116
+ * @param reason - MetaMask Connect invokeMethod reason.
117
+ * @param rpcCode - Original wallet JSON-RPC / EIP-1193 error code.
118
+ * @param rpcMessage - Original provider-facing wallet message, sourced only
119
+ * from the wallet's coded error. Unset when the wallet provides no message,
120
+ * so it may differ from `reason`, which can fall back through the cause chain.
121
+ * @param rpcData - Original JSON-RPC error data, when provided by the wallet.
122
+ */
123
+ constructor(reason, rpcCode, rpcMessage, rpcData) {
116
124
  super(
117
125
  `RPCErr${_RPCInvokeMethodErr.code}: RPC Client invoke method reason (${reason})`,
118
126
  _RPCInvokeMethodErr.code
@@ -120,6 +128,7 @@ var init_rpc = __esm({
120
128
  this.reason = reason;
121
129
  this.rpcCode = rpcCode;
122
130
  this.rpcMessage = rpcMessage;
131
+ this.rpcData = rpcData;
123
132
  }
124
133
  };
125
134
  _RPCInvokeMethodErr.code = 53;
@@ -1140,7 +1149,7 @@ var init_utils2 = __esm({
1140
1149
  "src/domain/utils/index.ts"() {
1141
1150
  "use strict";
1142
1151
  init_analytics();
1143
- packageVersion = false ? "unknown" : "1.0.0";
1152
+ packageVersion = false ? "unknown" : "1.1.0";
1144
1153
  }
1145
1154
  });
1146
1155
 
@@ -1177,7 +1186,7 @@ import {
1177
1186
  TransportTimeoutError
1178
1187
  } from "@metamask/multichain-api-client";
1179
1188
  import { JsonRpcError, providerErrors as providerErrors2, rpcErrors } from "@metamask/rpc-errors";
1180
- import { createDeferredPromise } from "@metamask/utils";
1189
+ import { createDeferredPromise, isValidJson as isValidJson3 } from "@metamask/utils";
1181
1190
  var DEFAULT_REQUEST_TIMEOUT2, CONNECTION_GRACE_PERIOD, DEFAULT_CONNECTION_TIMEOUT, DEFAULT_RESUME_TIMEOUT, SESSION_STORE_KEY, ACCOUNTS_STORE_KEY, CHAIN_STORE_KEY, PENDING_SESSION_REQUEST_KEY, CACHED_METHOD_LIST, CACHED_RESET_METHOD_LIST, logger, _MWPTransport_instances, onResumeHandler_fn, resumeSession_fn, startSession_fn, MWPTransport;
1182
1191
  var init_mwp = __esm({
1183
1192
  "src/multichain/transports/mwp/index.ts"() {
@@ -1284,10 +1293,12 @@ var init_mwp = __esm({
1284
1293
  const errorData = errorPayload;
1285
1294
  if (typeof errorData.code === "number" && typeof errorData.message === "string") {
1286
1295
  const { code, message: message2 } = errorData;
1296
+ const rawData = errorData.data;
1297
+ const data = isValidJson3(rawData) ? rawData : void 0;
1287
1298
  if (code >= 1e3 && code <= 4999) {
1288
- return providerErrors2.custom({ code, message: message2 });
1299
+ return providerErrors2.custom({ code, message: message2, data });
1289
1300
  }
1290
- return new JsonRpcError(code, message2);
1301
+ return new JsonRpcError(code, message2, data);
1291
1302
  }
1292
1303
  const message = errorPayload instanceof Error ? errorPayload.message : JSON.stringify(errorPayload);
1293
1304
  return rpcErrors.internal({ message });
@@ -2289,17 +2300,93 @@ import { analytics } from "@metamask/analytics";
2289
2300
  init_domain();
2290
2301
  init_utils();
2291
2302
  init_analytics();
2303
+
2304
+ // src/multichain/rpc/invocationError.ts
2305
+ init_domain();
2306
+ import { isValidJson } from "@metamask/utils";
2307
+ var MAX_ERROR_CAUSE_DEPTH = 5;
2308
+ function getErrorObject(value) {
2309
+ if (typeof value === "object" && value !== null) {
2310
+ return value;
2311
+ }
2312
+ return void 0;
2313
+ }
2314
+ function getNumericCode(value) {
2315
+ return typeof value === "number" ? value : void 0;
2316
+ }
2317
+ function getNonEmptyMessage(value) {
2318
+ return typeof value === "string" && value.length > 0 ? value : void 0;
2319
+ }
2320
+ function getJsonData(value) {
2321
+ return value !== void 0 && isValidJson(value) ? value : void 0;
2322
+ }
2323
+ function getFirstNonEmptyMessage(values) {
2324
+ for (const value of values) {
2325
+ const message = getNonEmptyMessage(value);
2326
+ if (message !== void 0) {
2327
+ return message;
2328
+ }
2329
+ }
2330
+ return void 0;
2331
+ }
2332
+ function getErrorObjectChain(errorObject) {
2333
+ const chain = [];
2334
+ let currentObject = errorObject;
2335
+ for (let depth = 0; currentObject !== void 0 && depth < MAX_ERROR_CAUSE_DEPTH; depth += 1) {
2336
+ chain.push(currentObject);
2337
+ currentObject = getErrorObject(currentObject.cause);
2338
+ }
2339
+ return chain;
2340
+ }
2341
+ function getCodedErrorDetails(value) {
2342
+ const code = getNumericCode(value == null ? void 0 : value.code);
2343
+ if (code === void 0) {
2344
+ return void 0;
2345
+ }
2346
+ const message = getNonEmptyMessage(value == null ? void 0 : value.message);
2347
+ const data = getJsonData(value == null ? void 0 : value.data);
2348
+ return __spreadValues(__spreadValues({
2349
+ code
2350
+ }, message === void 0 ? {} : { message }), data === void 0 ? {} : { data });
2351
+ }
2352
+ function getInvocationErrorDetails(error) {
2353
+ var _a2, _b, _c, _d;
2354
+ const errorObject = getErrorObject(error);
2355
+ const errorObjectChain = getErrorObjectChain(errorObject);
2356
+ const primitiveMessage = getNonEmptyMessage(error);
2357
+ for (const [index, currentObject] of errorObjectChain.entries()) {
2358
+ const codedDetails = getCodedErrorDetails(currentObject);
2359
+ if (codedDetails) {
2360
+ const descendantObjects = errorObjectChain.slice(index + 1);
2361
+ const ancestorObjects = errorObjectChain.slice(0, index);
2362
+ const descendantMessage = getFirstNonEmptyMessage(
2363
+ descendantObjects.map((object) => object.message)
2364
+ );
2365
+ const ancestorMessage = getFirstNonEmptyMessage([
2366
+ primitiveMessage,
2367
+ ...ancestorObjects.map((object) => object.message)
2368
+ ]);
2369
+ const reason2 = (_c = (_b = (_a2 = codedDetails.message) != null ? _a2 : descendantMessage) != null ? _b : ancestorMessage) != null ? _c : "Unknown error";
2370
+ return __spreadValues(__spreadValues({
2371
+ reason: reason2,
2372
+ rpcCode: codedDetails.code
2373
+ }, codedDetails.message === void 0 ? {} : { rpcMessage: codedDetails.message }), codedDetails.data === void 0 ? {} : { rpcData: codedDetails.data });
2374
+ }
2375
+ }
2376
+ const reason = (_d = primitiveMessage != null ? primitiveMessage : getFirstNonEmptyMessage(errorObjectChain.map((object) => object.message))) != null ? _d : "Unknown error";
2377
+ return {
2378
+ reason
2379
+ };
2380
+ }
2292
2381
  function toRPCInvokeMethodErr(error) {
2293
- var _a2;
2294
2382
  if (error instanceof RPCInvokeMethodErr) {
2295
2383
  return error;
2296
2384
  }
2297
- const castError = error;
2298
- return new RPCInvokeMethodErr(
2299
- (_a2 = castError.message) != null ? _a2 : "Unknown error",
2300
- castError.code
2301
- );
2385
+ const { reason, rpcCode, rpcMessage, rpcData } = getInvocationErrorDetails(error);
2386
+ return new RPCInvokeMethodErr(reason, rpcCode, rpcMessage, rpcData);
2302
2387
  }
2388
+
2389
+ // src/multichain/rpc/requestRouter.ts
2303
2390
  var _RequestRouter_instances, withAnalyticsTracking_fn, trackWalletActionRequested_fn, trackWalletActionSucceeded_fn, trackWalletActionFailed_fn, trackWalletActionRejected_fn;
2304
2391
  var RequestRouter = class {
2305
2392
  constructor(transport, rpcClient, config, transportType) {
@@ -2385,6 +2472,9 @@ var RequestRouter = class {
2385
2472
  }), 10);
2386
2473
  }
2387
2474
  const response = yield request;
2475
+ if (response.error) {
2476
+ throw toRPCInvokeMethodErr(response.error);
2477
+ }
2388
2478
  return response.result;
2389
2479
  }));
2390
2480
  });
@@ -2437,13 +2527,15 @@ withAnalyticsTracking_fn = function(options, execute) {
2437
2527
  yield __privateMethod(this, _RequestRouter_instances, trackWalletActionSucceeded_fn).call(this, options);
2438
2528
  return result;
2439
2529
  } catch (error) {
2440
- const isRejection = isRejectionError(error);
2530
+ const normalizedError = toRPCInvokeMethodErr(error);
2531
+ const analyticsError = normalizedError.rpcCode === void 0 ? error : normalizedError;
2532
+ const isRejection = isRejectionError(analyticsError);
2441
2533
  if (isRejection) {
2442
2534
  yield __privateMethod(this, _RequestRouter_instances, trackWalletActionRejected_fn).call(this, options);
2443
2535
  } else {
2444
- yield __privateMethod(this, _RequestRouter_instances, trackWalletActionFailed_fn).call(this, options, error);
2536
+ yield __privateMethod(this, _RequestRouter_instances, trackWalletActionFailed_fn).call(this, options, analyticsError);
2445
2537
  }
2446
- throw toRPCInvokeMethodErr(error);
2538
+ throw normalizedError;
2447
2539
  }
2448
2540
  });
2449
2541
  };
@@ -2498,6 +2590,7 @@ init_utils();
2498
2590
  import {
2499
2591
  getDefaultTransport
2500
2592
  } from "@metamask/multichain-api-client";
2593
+ import { isValidJson as isValidJson2 } from "@metamask/utils";
2501
2594
  var DEFAULT_REQUEST_TIMEOUT = 60 * 1e3;
2502
2595
  var _notificationCallbacks, _transport, _defaultRequestOptions, _pendingRequests, _handleResponseListener, _handleNotificationListener, _DefaultTransport_instances, notifyCallbacks_fn, parseWalletError_fn, isMetamaskProviderEvent_fn, handleResponse_fn, handleNotification_fn, setupMessageListener_fn, init_fn;
2503
2596
  var DefaultTransport = class {
@@ -2691,6 +2784,10 @@ parseWalletError_fn = function(errorPayload) {
2691
2784
  if (typeof errorData.code === "number") {
2692
2785
  error.code = errorData.code;
2693
2786
  }
2787
+ const { data } = errorData;
2788
+ if (isValidJson2(data)) {
2789
+ error.data = data;
2790
+ }
2694
2791
  return error;
2695
2792
  };
2696
2793
  isMetamaskProviderEvent_fn = function(event) {