@metamask/connect-multichain 0.8.0 → 0.10.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 (58) hide show
  1. package/CHANGELOG.md +32 -1
  2. package/README.md +38 -25
  3. package/dist/browser/es/connect-multichain.d.mts +31 -8
  4. package/dist/browser/es/connect-multichain.mjs +87 -68
  5. package/dist/browser/es/connect-multichain.mjs.map +1 -1
  6. package/dist/browser/es/metafile-esm.json +1 -1
  7. package/dist/browser/iife/connect-multichain.d.ts +31 -8
  8. package/dist/browser/iife/connect-multichain.js +100 -84
  9. package/dist/browser/iife/connect-multichain.js.map +1 -1
  10. package/dist/browser/iife/metafile-iife.json +1 -1
  11. package/dist/browser/umd/connect-multichain.d.ts +31 -8
  12. package/dist/browser/umd/connect-multichain.js +87 -68
  13. package/dist/browser/umd/connect-multichain.js.map +1 -1
  14. package/dist/browser/umd/metafile-cjs.json +1 -1
  15. package/dist/node/cjs/connect-multichain.d.ts +31 -8
  16. package/dist/node/cjs/connect-multichain.js +87 -67
  17. package/dist/node/cjs/connect-multichain.js.map +1 -1
  18. package/dist/node/cjs/metafile-cjs.json +1 -1
  19. package/dist/node/es/connect-multichain.d.mts +31 -8
  20. package/dist/node/es/connect-multichain.mjs +87 -67
  21. package/dist/node/es/connect-multichain.mjs.map +1 -1
  22. package/dist/node/es/metafile-esm.json +1 -1
  23. package/dist/react-native/es/connect-multichain.d.mts +31 -8
  24. package/dist/react-native/es/connect-multichain.mjs +87 -67
  25. package/dist/react-native/es/connect-multichain.mjs.map +1 -1
  26. package/dist/react-native/es/metafile-esm.json +1 -1
  27. package/dist/src/domain/multichain/api/infura.d.ts +13 -1
  28. package/dist/src/domain/multichain/api/infura.d.ts.map +1 -1
  29. package/dist/src/domain/multichain/api/infura.js +17 -5
  30. package/dist/src/domain/multichain/api/infura.js.map +1 -1
  31. package/dist/src/domain/multichain/index.d.ts +1 -1
  32. package/dist/src/domain/multichain/index.d.ts.map +1 -1
  33. package/dist/src/domain/multichain/index.js +3 -3
  34. package/dist/src/domain/multichain/index.js.map +1 -1
  35. package/dist/src/domain/multichain/types.d.ts +12 -1
  36. package/dist/src/domain/multichain/types.d.ts.map +1 -1
  37. package/dist/src/multichain/index.d.ts.map +1 -1
  38. package/dist/src/multichain/index.js +24 -17
  39. package/dist/src/multichain/index.js.map +1 -1
  40. package/dist/src/multichain/rpc/requestRouter.d.ts +3 -2
  41. package/dist/src/multichain/rpc/requestRouter.d.ts.map +1 -1
  42. package/dist/src/multichain/rpc/requestRouter.js +14 -15
  43. package/dist/src/multichain/rpc/requestRouter.js.map +1 -1
  44. package/dist/src/multichain/transports/default/index.d.ts.map +1 -1
  45. package/dist/src/multichain/transports/default/index.js +7 -1
  46. package/dist/src/multichain/transports/default/index.js.map +1 -1
  47. package/dist/src/multichain/utils/analytics.d.ts +6 -6
  48. package/dist/src/multichain/utils/analytics.d.ts.map +1 -1
  49. package/dist/src/multichain/utils/analytics.js +8 -12
  50. package/dist/src/multichain/utils/analytics.js.map +1 -1
  51. package/dist/src/ui/ModalFactory.d.ts.map +1 -1
  52. package/dist/src/ui/ModalFactory.js +1 -3
  53. package/dist/src/ui/ModalFactory.js.map +1 -1
  54. package/dist/src/ui/modals/web/install.d.ts.map +1 -1
  55. package/dist/src/ui/modals/web/install.js +0 -1
  56. package/dist/src/ui/modals/web/install.js.map +1 -1
  57. package/dist/types/connect-multichain.d.ts +31 -8
  58. package/package.json +3 -3
@@ -1 +1 @@
1
- {"inputs":{"src/domain/errors/base.ts":{"bytes":387,"imports":[],"format":"esm"},"src/domain/errors/rpc.ts":{"bytes":1371,"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":3314,"imports":[],"format":"esm"},"src/domain/multichain/api/infura.ts":{"bytes":419,"imports":[{"path":"src/domain/multichain/api/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/domain/multichain/index.ts":{"bytes":4045,"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":3557,"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":711,"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":3213,"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":274,"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":6765,"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":9560,"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":5710,"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":28913,"imports":[{"path":"@metamask/mobile-wallet-protocol-core","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/rpc-errors","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":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/mwp/KeyManager.ts":{"bytes":1328,"imports":[{"path":"eciesjs","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/index.ts":{"bytes":34194,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"import-statement","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","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/transports/mwp/index.ts","kind":"import-statement","original":"./transports/mwp"},{"path":"src/multichain/transports/mwp/KeyManager.ts","kind":"import-statement","original":"./transports/mwp/KeyManager"},{"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":"ws","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":3341,"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":6429,"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":1000,"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":227596},"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":"@paulmillr/qr","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","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":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"eciesjs","kind":"require-call","external":true},{"path":"ws","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":1861},"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":3681},"src/domain/multichain/api/infura.ts":{"bytesInOutput":338},"src/domain/multichain/index.ts":{"bytesInOutput":2727},"src/domain/platform/index.ts":{"bytesInOutput":3842},"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":1923},"src/domain/utils/index.ts":{"bytesInOutput":152},"src/domain/index.ts":{"bytesInOutput":233},"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":2031},"src/multichain/index.ts":{"bytesInOutput":33154},"src/config/index.ts":{"bytesInOutput":202},"src/multichain/rpc/handlers/rpcClient.ts":{"bytesInOutput":3029},"src/multichain/rpc/requestRouter.ts":{"bytesInOutput":5865},"src/multichain/transports/default/index.ts":{"bytesInOutput":9774},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytesInOutput":5676},"src/multichain/transports/mwp/index.ts":{"bytesInOutput":24220},"src/multichain/transports/constants.ts":{"bytesInOutput":70},"src/multichain/transports/mwp/KeyManager.ts":{"bytesInOutput":1033},"src/store/index.ts":{"bytesInOutput":3365},"src/domain/errors/storage.ts":{"bytesInOutput":1201},"src/ui/ModalFactory.ts":{"bytesInOutput":5218},"src/ui/index.ts":{"bytesInOutput":510}},"bytes":139270}}}
1
+ {"inputs":{"src/domain/errors/base.ts":{"bytes":387,"imports":[],"format":"esm"},"src/domain/errors/rpc.ts":{"bytes":1371,"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":3314,"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":4145,"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":3557,"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":711,"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":2967,"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":274,"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":6856,"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":9976,"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":5710,"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":28913,"imports":[{"path":"@metamask/mobile-wallet-protocol-core","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","kind":"import-statement","external":true},{"path":"@metamask/rpc-errors","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":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/transports/mwp/KeyManager.ts":{"bytes":1328,"imports":[{"path":"eciesjs","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/multichain/index.ts":{"bytes":34841,"imports":[{"path":"@metamask/analytics","kind":"import-statement","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"import-statement","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"import-statement","external":true},{"path":"@metamask/multichain-api-client","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/transports/mwp/index.ts","kind":"import-statement","original":"./transports/mwp"},{"path":"src/multichain/transports/mwp/KeyManager.ts","kind":"import-statement","original":"./transports/mwp/KeyManager"},{"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":"ws","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":3341,"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":6351,"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":1000,"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":229372},"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":"@paulmillr/qr","kind":"require-call","external":true},{"path":"@metamask/analytics","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-core","kind":"require-call","external":true},{"path":"@metamask/mobile-wallet-protocol-dapp-client","kind":"require-call","external":true},{"path":"@metamask/multichain-api-client","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":"require-call","external":true},{"path":"@metamask/multichain-api-client","kind":"require-call","external":true},{"path":"@metamask/rpc-errors","kind":"require-call","external":true},{"path":"eciesjs","kind":"require-call","external":true},{"path":"ws","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":1861},"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":3681},"src/domain/multichain/api/infura.ts":{"bytesInOutput":458},"src/domain/multichain/index.ts":{"bytesInOutput":2855},"src/domain/platform/index.ts":{"bytesInOutput":3842},"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":1625},"src/domain/utils/index.ts":{"bytesInOutput":152},"src/domain/index.ts":{"bytesInOutput":233},"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":2031},"src/multichain/index.ts":{"bytesInOutput":33681},"src/config/index.ts":{"bytesInOutput":202},"src/multichain/rpc/handlers/rpcClient.ts":{"bytesInOutput":3029},"src/multichain/rpc/requestRouter.ts":{"bytesInOutput":5849},"src/multichain/transports/default/index.ts":{"bytesInOutput":9839},"src/multichain/transports/multichainApiClientWrapper/index.ts":{"bytesInOutput":5676},"src/multichain/transports/mwp/index.ts":{"bytesInOutput":24220},"src/multichain/transports/constants.ts":{"bytesInOutput":70},"src/multichain/transports/mwp/KeyManager.ts":{"bytesInOutput":1033},"src/store/index.ts":{"bytesInOutput":3365},"src/domain/errors/storage.ts":{"bytesInOutput":1201},"src/ui/ModalFactory.ts":{"bytesInOutput":5150},"src/ui/index.ts":{"bytesInOutput":510}},"bytes":139728}}}
@@ -1,7 +1,7 @@
1
1
  import debug from 'debug';
2
2
  import { SessionData, Transport, SessionProperties, TransportRequest, TransportResponse, MultichainApiClient } from '@metamask/multichain-api-client';
3
3
  export { SessionData } from '@metamask/multichain-api-client';
4
- import { CaipAccountId, Json } from '@metamask/utils';
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
 
@@ -386,6 +386,14 @@ type ConnectionRequest = {
386
386
  };
387
387
  };
388
388
  };
389
+ /**
390
+ * Package versions keyed by connect package name.
391
+ * connect-multichain is always present; chain-specific packages
392
+ * appear only when their client is instantiated.
393
+ */
394
+ type ConnectVersions = {
395
+ 'connect-multichain': string;
396
+ } & Partial<Record<'connect-evm' | 'connect-solana', string>>;
389
397
  /**
390
398
  * Constructor options for creating a Multichain SDK instance.
391
399
  *
@@ -431,6 +439,8 @@ type MultichainOptions = {
431
439
  };
432
440
  /** Enable debug logging */
433
441
  debug?: boolean;
442
+ /** Package versions contributed by chain-specific clients (merged on each createMultichainClient call) */
443
+ versions?: Partial<ConnectVersions>;
434
444
  };
435
445
  type MultiChainFNOptions = Omit<MultichainOptions, 'storage' | 'ui'> & {
436
446
  ui?: Omit<MultichainOptions['ui'], 'factory'>;
@@ -441,11 +451,12 @@ type MultiChainFNOptions = Omit<MultichainOptions, 'storage' | 'ui'> & {
441
451
  * Options that can be merged/overwritten when createMultichainClient is called
442
452
  * with an existing singleton.
443
453
  */
444
- type MergeableMultichainOptions = Omit<MultichainOptions, 'dapp' | 'analytics' | 'storage' | 'api' | 'ui' | 'transport'> & {
454
+ type MergeableMultichainOptions = Omit<MultichainOptions, 'dapp' | 'analytics' | 'storage' | 'api' | 'ui' | 'transport' | 'versions'> & {
445
455
  api?: MultichainOptions['api'];
446
456
  ui?: Pick<MultichainOptions['ui'], 'headless' | 'preferExtension' | 'showInstallModal'>;
447
457
  transport?: Pick<NonNullable<MultichainOptions['transport']>, 'extensionId'>;
448
458
  debug?: boolean;
459
+ versions?: Partial<ConnectVersions>;
449
460
  };
450
461
  /**
451
462
  * Complete options for Multichain SDK configuration.
@@ -474,7 +485,18 @@ declare const infuraRpcUrls: RpcUrlsMap;
474
485
  declare const RPC_HANDLED_METHODS: Set<string>;
475
486
  declare const SDK_HANDLED_METHODS: Set<string>;
476
487
 
477
- declare function getInfuraRpcUrls(infuraAPIKey: string): RpcUrlsMap;
488
+ /**
489
+ * Generates Infura RPC URLs for common networks keyed by CAIP Chain ID.
490
+ *
491
+ * @param options - The options for generating Infura RPC URLs
492
+ * @param options.infuraApiKey - The Infura API key
493
+ * @param options.caipChainIds - Optional CAIP-2 chain IDs to filter the output
494
+ * @returns A map of CAIP-2 chain IDs to Infura RPC URLs
495
+ */
496
+ declare function getInfuraRpcUrls({ infuraApiKey, caipChainIds, }: {
497
+ infuraApiKey: string;
498
+ caipChainIds?: CaipChainId[];
499
+ }): RpcUrlsMap;
478
500
 
479
501
  type ConnectionStatus = 'pending' | 'loaded' | 'disconnected' | 'connected' | 'connecting';
480
502
  declare enum TransportType {
@@ -519,7 +541,7 @@ declare abstract class MultichainCore extends EventEmitter<SDKEvents> {
519
541
  constructor(options: MultichainOptions);
520
542
  /**
521
543
  * Merges the given options into the current instance options.
522
- * Only the mergeable keys are updated (api.supportedNetworks, ui.*, mobile.*, transport.extensionId, debug).
544
+ * Only the mergeable keys are updated (api.supportedNetworks, versions, ui.*, mobile.*, transport.extensionId, debug).
523
545
  * The main thing to note is that the value for `dapp` is not merged as it does not make sense for
524
546
  * subsequent calls to `createMultichainClient` to have a different `dapp` value.
525
547
  * Used when createMultichainClient is called with an existing singleton.
@@ -658,15 +680,16 @@ declare function isRejectionError(error: unknown): boolean;
658
680
  * @param options - Multichain options containing dapp and analytics config
659
681
  * @param storage - Storage client for getting anonymous ID
660
682
  * @param invokeOptions - The invoke method options containing method and scope
683
+ * @param transportType - The transport type to use for the analytics event
661
684
  * @returns Wallet action analytics properties
662
685
  */
663
- declare function getWalletActionAnalyticsProperties(options: MultichainOptions, storage: StoreClient, invokeOptions: InvokeMethodOptions): Promise<{
664
- mmconnect_version: string;
686
+ declare function getWalletActionAnalyticsProperties(options: MultichainOptions, storage: StoreClient, invokeOptions: InvokeMethodOptions, transportType: TransportType): Promise<{
687
+ mmconnect_versions: Record<string, string>;
665
688
  dapp_id: string;
666
689
  method: string;
667
- integration_type: string;
668
690
  caip_chain_id: string;
669
691
  anon_id: string;
692
+ transport_type: TransportType;
670
693
  }>;
671
694
 
672
695
  /**
@@ -678,4 +701,4 @@ declare function getVersion(): string;
678
701
 
679
702
  declare const createMultichainClient: CreateMultichainFN;
680
703
 
681
- export { type ConnectionRequest, type ConnectionStatus, type CreateMultichainFN, type DappSettings, type DataType, type DomainErrorCodes, type Enumerate, type ErrorCodeRange, type ErrorCodes, EventEmitter, type EventTypes, type ExtendedTransport, type InstallWidgetProps, type InvokeMethodOptions, type LoggerNameSpaces, type MergeableMultichainOptions, Modal, type ModalFactoryConnectOptions, type ModalFactoryOptions, MultichainCore, type MultichainOptions, type NotificationCallback, type OTPCode, type OTPCodeWidgetProps, PlatformType, type QRLink, type RPCAPI, type RPCErrorCodes, RPCHttpErr, RPCInvokeMethodErr, RPCReadonlyRequestErr, RPCReadonlyResponseErr, type RPCResponse, RPC_HANDLED_METHODS, type RpcMethod, type RpcUrlsMap, type SDKEvents, SDK_HANDLED_METHODS, type Scope, type StorageErrorCodes, StoreAdapter, StoreClient, type StoreOptions, TransportType, createLogger, createMultichainClient, enableDebug, getInfuraRpcUrls, getPlatformType, getTransportType, getVersion, getWalletActionAnalyticsProperties, hasExtension, infuraRpcUrls, isEnabled, isMetamaskExtensionInstalled, isRejectionError, isSecure };
704
+ export { type ConnectVersions, type ConnectionRequest, type ConnectionStatus, type CreateMultichainFN, type DappSettings, type DataType, type DomainErrorCodes, type Enumerate, type ErrorCodeRange, type ErrorCodes, EventEmitter, type EventTypes, type ExtendedTransport, type InstallWidgetProps, type InvokeMethodOptions, type LoggerNameSpaces, type MergeableMultichainOptions, Modal, type ModalFactoryConnectOptions, type ModalFactoryOptions, MultichainCore, type MultichainOptions, type NotificationCallback, type OTPCode, type OTPCodeWidgetProps, PlatformType, type QRLink, type RPCAPI, type RPCErrorCodes, RPCHttpErr, RPCInvokeMethodErr, RPCReadonlyRequestErr, RPCReadonlyResponseErr, type RPCResponse, RPC_HANDLED_METHODS, type RpcMethod, type RpcUrlsMap, type SDKEvents, SDK_HANDLED_METHODS, type Scope, type StorageErrorCodes, StoreAdapter, StoreClient, type StoreOptions, TransportType, createLogger, createMultichainClient, enableDebug, getInfuraRpcUrls, getPlatformType, getTransportType, getVersion, getWalletActionAnalyticsProperties, hasExtension, infuraRpcUrls, isEnabled, isMetamaskExtensionInstalled, isRejectionError, isSecure };
@@ -356,10 +356,16 @@ var init_constants = __esm({
356
356
  });
357
357
 
358
358
  // src/domain/multichain/api/infura.ts
359
- function getInfuraRpcUrls(infuraAPIKey) {
360
- return Object.keys(infuraRpcUrls).reduce((acc, key) => {
361
- const typedKey = key;
362
- acc[typedKey] = `${infuraRpcUrls[typedKey]}${infuraAPIKey}`;
359
+ function getInfuraRpcUrls({
360
+ infuraApiKey,
361
+ caipChainIds
362
+ }) {
363
+ const keys = caipChainIds && caipChainIds.length > 0 ? caipChainIds : Object.keys(infuraRpcUrls);
364
+ return keys.reduce((acc, key) => {
365
+ const baseUrl = infuraRpcUrls[key];
366
+ if (baseUrl) {
367
+ acc[key] = `${baseUrl}${infuraApiKey}`;
368
+ }
363
369
  return acc;
364
370
  }, {});
365
371
  }
@@ -401,7 +407,7 @@ var init_multichain = __esm({
401
407
  }
402
408
  /**
403
409
  * Merges the given options into the current instance options.
404
- * Only the mergeable keys are updated (api.supportedNetworks, ui.*, mobile.*, transport.extensionId, debug).
410
+ * Only the mergeable keys are updated (api.supportedNetworks, versions, ui.*, mobile.*, transport.extensionId, debug).
405
411
  * The main thing to note is that the value for `dapp` is not merged as it does not make sense for
406
412
  * subsequent calls to `createMultichainClient` to have a different `dapp` value.
407
413
  * Used when createMultichainClient is called with an existing singleton.
@@ -409,22 +415,23 @@ var init_multichain = __esm({
409
415
  * @param partial - Options to merge/overwrite onto the current instance
410
416
  */
411
417
  mergeOptions(partial) {
412
- var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n;
418
+ var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
413
419
  const opts = this.options;
414
420
  this.options = __spreadProps(__spreadValues({}, opts), {
415
421
  api: __spreadProps(__spreadValues({}, opts.api), {
416
422
  supportedNetworks: __spreadValues(__spreadValues({}, opts.api.supportedNetworks), (_b = (_a2 = partial.api) == null ? void 0 : _a2.supportedNetworks) != null ? _b : {})
417
423
  }),
424
+ versions: __spreadValues(__spreadValues({}, opts.versions), (_c = partial.versions) != null ? _c : {}),
418
425
  ui: __spreadProps(__spreadValues({}, opts.ui), {
419
- headless: (_d = (_c = partial.ui) == null ? void 0 : _c.headless) != null ? _d : opts.ui.headless,
420
- preferExtension: (_f = (_e = partial.ui) == null ? void 0 : _e.preferExtension) != null ? _f : opts.ui.preferExtension,
421
- showInstallModal: (_h = (_g = partial.ui) == null ? void 0 : _g.showInstallModal) != null ? _h : opts.ui.showInstallModal
426
+ headless: (_e = (_d = partial.ui) == null ? void 0 : _d.headless) != null ? _e : opts.ui.headless,
427
+ preferExtension: (_g = (_f = partial.ui) == null ? void 0 : _f.preferExtension) != null ? _g : opts.ui.preferExtension,
428
+ showInstallModal: (_i = (_h = partial.ui) == null ? void 0 : _h.showInstallModal) != null ? _i : opts.ui.showInstallModal
422
429
  }),
423
- mobile: __spreadValues(__spreadValues({}, opts.mobile), (_i = partial.mobile) != null ? _i : {}),
424
- transport: __spreadProps(__spreadValues({}, (_j = opts.transport) != null ? _j : {}), {
425
- extensionId: (_m = (_k = partial.transport) == null ? void 0 : _k.extensionId) != null ? _m : (_l = opts.transport) == null ? void 0 : _l.extensionId
430
+ mobile: __spreadValues(__spreadValues({}, opts.mobile), (_j = partial.mobile) != null ? _j : {}),
431
+ transport: __spreadProps(__spreadValues({}, (_k = opts.transport) != null ? _k : {}), {
432
+ extensionId: (_n = (_l = partial.transport) == null ? void 0 : _l.extensionId) != null ? _n : (_m = opts.transport) == null ? void 0 : _m.extensionId
426
433
  }),
427
- debug: (_n = partial.debug) != null ? _n : opts.debug
434
+ debug: (_o = partial.debug) != null ? _o : opts.debug
428
435
  });
429
436
  }
430
437
  };
@@ -896,35 +903,30 @@ function isRejectionError(error) {
896
903
  }
897
904
  function getBaseAnalyticsProperties(options, storage) {
898
905
  return __async(this, null, function* () {
899
- var _a2, _b;
900
- const version = getVersion();
906
+ var _a2;
901
907
  const dappId = getDappId(options.dapp);
902
908
  const platform = getPlatformType();
903
909
  const anonId = yield storage.getAnonId();
904
- const integrationType = (_b = (_a2 = options.analytics) == null ? void 0 : _a2.integrationType) != null ? _b : "unknown" /* UNKNOWN */;
905
910
  return {
906
- mmconnect_version: version,
911
+ mmconnect_versions: (_a2 = options.versions) != null ? _a2 : {},
907
912
  dapp_id: dappId,
908
913
  platform,
909
- integration_type: integrationType,
910
914
  anon_id: anonId
911
915
  };
912
916
  });
913
917
  }
914
- function getWalletActionAnalyticsProperties(options, storage, invokeOptions) {
918
+ function getWalletActionAnalyticsProperties(options, storage, invokeOptions, transportType) {
915
919
  return __async(this, null, function* () {
916
- var _a2, _b;
917
- const version = getVersion();
920
+ var _a2;
918
921
  const dappId = getDappId(options.dapp);
919
922
  const anonId = yield storage.getAnonId();
920
- const integrationType = (_b = (_a2 = options.analytics) == null ? void 0 : _a2.integrationType) != null ? _b : "unknown";
921
923
  return {
922
- mmconnect_version: version,
924
+ mmconnect_versions: (_a2 = options.versions) != null ? _a2 : {},
923
925
  dapp_id: dappId,
924
926
  method: invokeOptions.request.method,
925
- integration_type: integrationType,
926
927
  caip_chain_id: invokeOptions.scope,
927
- anon_id: anonId
928
+ anon_id: anonId,
929
+ transport_type: transportType
928
930
  };
929
931
  });
930
932
  }
@@ -1358,10 +1360,11 @@ init_utils();
1358
1360
  init_analytics();
1359
1361
  var _RequestRouter_instances, withAnalyticsTracking_fn, trackWalletActionRequested_fn, trackWalletActionSucceeded_fn, trackWalletActionFailed_fn, trackWalletActionRejected_fn;
1360
1362
  var RequestRouter = class {
1361
- constructor(transport, rpcClient, config) {
1363
+ constructor(transport, rpcClient, config, transportType) {
1362
1364
  this.transport = transport;
1363
1365
  this.rpcClient = rpcClient;
1364
1366
  this.config = config;
1367
+ this.transportType = transportType;
1365
1368
  __privateAdd(this, _RequestRouter_instances);
1366
1369
  }
1367
1370
  /**
@@ -1431,16 +1434,14 @@ var RequestRouter = class {
1431
1434
  */
1432
1435
  handleWithRpcNode(options) {
1433
1436
  return __async(this, null, function* () {
1434
- return __privateMethod(this, _RequestRouter_instances, withAnalyticsTracking_fn).call(this, options, () => __async(this, null, function* () {
1435
- try {
1436
- return yield this.rpcClient.request(options);
1437
- } catch (error) {
1438
- if (error instanceof MissingRpcEndpointErr) {
1439
- return this.handleWithWallet(options);
1440
- }
1441
- throw error;
1437
+ try {
1438
+ return yield this.rpcClient.request(options);
1439
+ } catch (error) {
1440
+ if (error instanceof MissingRpcEndpointErr) {
1441
+ return this.handleWithWallet(options);
1442
1442
  }
1443
- }));
1443
+ throw error;
1444
+ }
1444
1445
  });
1445
1446
  }
1446
1447
  /**
@@ -1484,7 +1485,8 @@ trackWalletActionRequested_fn = function(options) {
1484
1485
  const props = yield getWalletActionAnalyticsProperties(
1485
1486
  this.config,
1486
1487
  this.config.storage,
1487
- options
1488
+ options,
1489
+ this.transportType
1488
1490
  );
1489
1491
  analytics.track("mmconnect_wallet_action_requested", props);
1490
1492
  });
@@ -1494,7 +1496,8 @@ trackWalletActionSucceeded_fn = function(options) {
1494
1496
  const props = yield getWalletActionAnalyticsProperties(
1495
1497
  this.config,
1496
1498
  this.config.storage,
1497
- options
1499
+ options,
1500
+ this.transportType
1498
1501
  );
1499
1502
  analytics.track("mmconnect_wallet_action_succeeded", props);
1500
1503
  });
@@ -1504,7 +1507,8 @@ trackWalletActionFailed_fn = function(options) {
1504
1507
  const props = yield getWalletActionAnalyticsProperties(
1505
1508
  this.config,
1506
1509
  this.config.storage,
1507
- options
1510
+ options,
1511
+ this.transportType
1508
1512
  );
1509
1513
  analytics.track("mmconnect_wallet_action_failed", props);
1510
1514
  });
@@ -1514,7 +1518,8 @@ trackWalletActionRejected_fn = function(options) {
1514
1518
  const props = yield getWalletActionAnalyticsProperties(
1515
1519
  this.config,
1516
1520
  this.config.storage,
1517
- options
1521
+ options,
1522
+ this.transportType
1518
1523
  );
1519
1524
  analytics.track("mmconnect_wallet_action_rejected", props);
1520
1525
  });
@@ -1759,7 +1764,9 @@ setupMessageListener_fn = function() {
1759
1764
  init_fn = function() {
1760
1765
  return __async(this, null, function* () {
1761
1766
  __privateMethod(this, _DefaultTransport_instances, setupMessageListener_fn).call(this);
1762
- yield __privateGet(this, _transport).connect();
1767
+ if (!__privateGet(this, _transport).isConnected()) {
1768
+ yield __privateGet(this, _transport).connect();
1769
+ }
1763
1770
  });
1764
1771
  };
1765
1772
 
@@ -2606,16 +2613,21 @@ var _MetaMaskConnectMultichain = class _MetaMaskConnectMultichain extends Multic
2606
2613
  constructor(options) {
2607
2614
  var _a2, _b, _c, _d, _e, _f;
2608
2615
  const withDappMetadata = setupDappMetadata(options);
2609
- const integrationType = (_b = (_a2 = options.analytics) == null ? void 0 : _a2.integrationType) != null ? _b : "direct";
2616
+ const integrationType = ((_a2 = options.analytics) == null ? void 0 : _a2.integrationType) || "direct";
2610
2617
  const allOptions = __spreadProps(__spreadValues({}, withDappMetadata), {
2611
2618
  ui: __spreadProps(__spreadValues({}, withDappMetadata.ui), {
2612
- preferExtension: (_c = withDappMetadata.ui.preferExtension) != null ? _c : true,
2613
- showInstallModal: (_d = withDappMetadata.ui.showInstallModal) != null ? _d : false,
2614
- headless: (_e = withDappMetadata.ui.headless) != null ? _e : false
2619
+ preferExtension: (_b = withDappMetadata.ui.preferExtension) != null ? _b : true,
2620
+ showInstallModal: (_c = withDappMetadata.ui.showInstallModal) != null ? _c : false,
2621
+ headless: (_d = withDappMetadata.ui.headless) != null ? _d : false
2615
2622
  }),
2616
- analytics: __spreadProps(__spreadValues({}, (_f = options.analytics) != null ? _f : {}), {
2623
+ analytics: __spreadProps(__spreadValues({}, (_e = options.analytics) != null ? _e : {}), {
2617
2624
  integrationType
2618
- })
2625
+ }),
2626
+ versions: __spreadValues({
2627
+ // typeof guard needed: Metro (React Native) bundles TS source directly,
2628
+ // bypassing the tsup build that substitutes __PACKAGE_VERSION__.
2629
+ "connect-multichain": false ? "unknown" : "0.10.0"
2630
+ }, (_f = options.versions) != null ? _f : {})
2619
2631
  });
2620
2632
  super(allOptions);
2621
2633
  __privateAdd(this, _MetaMaskConnectMultichain_instances);
@@ -2672,23 +2684,33 @@ var _MetaMaskConnectMultichain = class _MetaMaskConnectMultichain extends Multic
2672
2684
  // Creates a singleton instance of MetaMaskConnectMultichain.
2673
2685
  // If the singleton already exists, it merges the incoming options with the
2674
2686
  // existing singleton options for the following keys: `api.supportedNetworks`,
2675
- // `ui.*`, `mobile.*`, `transport.extensionId`, `debug`. Take note that the
2676
- // value for `dapp` is not merged as it does not make sense for subsequent calls to
2677
- // `createMultichainClient` to have a different `dapp` value.
2687
+ // `versions`, `ui.*`, `mobile.*`, `transport.extensionId`, `debug`. Take note
2688
+ // that the value for `dapp` is not merged as it does not make sense for
2689
+ // subsequent calls to `createMultichainClient` to have a different `dapp` value.
2678
2690
  static create(options) {
2679
2691
  return __async(this, null, function* () {
2692
+ var _a2, _b;
2680
2693
  const globalObject = getGlobalObject();
2681
2694
  const existing = globalObject[SINGLETON_KEY];
2682
2695
  if (existing) {
2683
2696
  const instance = yield existing;
2684
2697
  instance.mergeOptions(options);
2698
+ analytics2.setGlobalProperty(
2699
+ "mmconnect_versions",
2700
+ (_a2 = instance.options.versions) != null ? _a2 : {}
2701
+ );
2702
+ if ((_b = options.analytics) == null ? void 0 : _b.integrationType) {
2703
+ analytics2.setGlobalProperty("integration_types", [
2704
+ options.analytics.integrationType
2705
+ ]);
2706
+ }
2685
2707
  if (options.debug) {
2686
2708
  enableDebug("metamask-sdk:*");
2687
2709
  }
2688
2710
  return instance;
2689
2711
  }
2690
2712
  const instancePromise = (() => __async(null, null, function* () {
2691
- var _a2;
2713
+ var _a3;
2692
2714
  const instance = new _MetaMaskConnectMultichain(options);
2693
2715
  const isEnabled2 = yield isEnabled(
2694
2716
  "metamask-sdk:core",
@@ -2697,7 +2719,7 @@ var _MetaMaskConnectMultichain = class _MetaMaskConnectMultichain extends Multic
2697
2719
  if (isEnabled2) {
2698
2720
  enableDebug("metamask-sdk:core");
2699
2721
  }
2700
- yield __privateMethod(_a2 = instance, _MetaMaskConnectMultichain_instances, init_fn2).call(_a2);
2722
+ yield __privateMethod(_a3 = instance, _MetaMaskConnectMultichain_instances, init_fn2).call(_a3);
2701
2723
  return instance;
2702
2724
  }))();
2703
2725
  globalObject[SINGLETON_KEY] = instancePromise;
@@ -2825,7 +2847,12 @@ var _MetaMaskConnectMultichain = class _MetaMaskConnectMultichain extends Multic
2825
2847
  return __async(this, null, function* () {
2826
2848
  const { transport, options } = this;
2827
2849
  const rpcClient = new RpcClient(options, __privateGet(this, _sdkInfo));
2828
- const requestRouter = new RequestRouter(transport, rpcClient, options);
2850
+ const requestRouter = new RequestRouter(
2851
+ transport,
2852
+ rpcClient,
2853
+ options,
2854
+ this.transportType
2855
+ );
2829
2856
  return requestRouter.invokeMethod(request);
2830
2857
  });
2831
2858
  }
@@ -2878,24 +2905,28 @@ _sdkInfo = new WeakMap();
2878
2905
  _MetaMaskConnectMultichain_instances = new WeakSet();
2879
2906
  setupAnalytics_fn = function() {
2880
2907
  return __async(this, null, function* () {
2881
- var _a2;
2908
+ var _a2, _b;
2882
2909
  const platform = getPlatformType();
2883
2910
  const isBrowser = platform === "in-app-browser" /* MetaMaskMobileWebview */ || platform === "web-desktop" /* DesktopWeb */ || platform === "web-mobile" /* MobileWeb */;
2884
2911
  const isReactNative2 = platform === "react-native" /* ReactNative */;
2885
2912
  if (!isBrowser && !isReactNative2) {
2886
2913
  return;
2887
2914
  }
2888
- const version = getVersion();
2889
2915
  const dappId = getDappId(this.options.dapp);
2890
2916
  const anonId = yield this.storage.getAnonId();
2891
2917
  const { integrationType } = (_a2 = this.options.analytics) != null ? _a2 : {
2892
2918
  integrationType: ""
2893
2919
  };
2894
- analytics2.setGlobalProperty("mmconnect_version", version);
2920
+ analytics2.setGlobalProperty(
2921
+ "mmconnect_versions",
2922
+ (_b = this.options.versions) != null ? _b : {}
2923
+ );
2895
2924
  analytics2.setGlobalProperty("dapp_id", dappId);
2896
2925
  analytics2.setGlobalProperty("anon_id", anonId);
2897
2926
  analytics2.setGlobalProperty("platform", platform);
2898
- analytics2.setGlobalProperty("integration_type", integrationType);
2927
+ if (integrationType) {
2928
+ analytics2.setGlobalProperty("integration_types", [integrationType]);
2929
+ }
2899
2930
  analytics2.enable();
2900
2931
  });
2901
2932
  };
@@ -2982,15 +3013,6 @@ init_fn2 = function() {
2982
3013
  try {
2983
3014
  yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupAnalytics_fn).call(this);
2984
3015
  yield __privateMethod(this, _MetaMaskConnectMultichain_instances, setupTransport_fn).call(this);
2985
- try {
2986
- const baseProps = yield getBaseAnalyticsProperties(
2987
- this.options,
2988
- this.storage
2989
- );
2990
- analytics2.track("mmconnect_initialized", baseProps);
2991
- } catch (error) {
2992
- logger2("Error tracking initialized event", error);
2993
- }
2994
3016
  } catch (error) {
2995
3017
  yield this.storage.removeTransport();
2996
3018
  this.status = "pending";
@@ -3644,7 +3666,6 @@ var BaseModalFactory = class {
3644
3666
  parentElement,
3645
3667
  showInstallModal,
3646
3668
  link: qrCodeLink,
3647
- sdkVersion: getVersion(),
3648
3669
  generateQRCode: (request) => __async(this, null, function* () {
3649
3670
  var _a3;
3650
3671
  const newLink = this.createConnectionDeeplink(request);
@@ -3670,7 +3691,6 @@ var BaseModalFactory = class {
3670
3691
  const otpCode = yield createOTPCode();
3671
3692
  const modal = new this.options.OTPCodeModal({
3672
3693
  parentElement: container,
3673
- sdkVersion: getVersion(),
3674
3694
  otpCode,
3675
3695
  onClose: this.onCloseModal.bind(this),
3676
3696
  createOTPCode,