diff --git a/package.json b/package.json index c66be5f9834..ca2eb8f0e82 100644 --- a/package.json +++ b/package.json @@ -330,7 +330,7 @@ "@metamask/utils": "^11.11.0", "@myx-trade/sdk": "^0.1.265", "@ngraveio/bc-ur": "^1.1.6", - "@nktkas/hyperliquid": "^0.30.2", + "@nktkas/hyperliquid": "^0.32.2", "@noble/curves": "1.9.6", "@noble/hashes": "1.8.0", "@notifee/react-native": "^9.0.0", diff --git a/shim.js b/shim.js index bc6d2926c8d..e5fba21d16a 100644 --- a/shim.js +++ b/shim.js @@ -130,6 +130,32 @@ if (typeof global.CustomEvent === 'undefined') { }; } +// CloseEvent polyfill for @nktkas/rews v2 (used by Hyperliquid SDK WebSocket transport) +// React Native/Hermes does not provide CloseEvent as a global constructor +if (typeof global.CloseEvent === 'undefined') { + global.CloseEvent = function (type, params) { + params = params || {}; + const event = new global.Event(type, params); + event.code = params.code ?? 0; + event.reason = params.reason ?? ''; + event.wasClean = params.wasClean ?? false; + return event; + }; +} + +// MessageEvent polyfill for @nktkas/rews v2 (used by Hyperliquid SDK WebSocket transport) +// React Native/Hermes does not provide MessageEvent as a global constructor +if (typeof global.MessageEvent === 'undefined') { + global.MessageEvent = function (type, params) { + params = params || {}; + const event = new global.Event(type, params); + event.data = params.data ?? null; + event.origin = params.origin ?? ''; + event.lastEventId = params.lastEventId ?? ''; + return event; + }; +} + class AbortError extends Error { constructor(message) { super(message); diff --git a/yarn.lock b/yarn.lock index 4f553e5f7d2..4e11230e313 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10381,24 +10381,21 @@ __metadata: languageName: node linkType: hard -"@nktkas/hyperliquid@npm:^0.30.2": - version: 0.30.2 - resolution: "@nktkas/hyperliquid@npm:0.30.2" - dependencies: - "@nktkas/rews": "npm:^1.2.3" - "@noble/hashes": "npm:^2.0.1" - micro-eth-signer: "npm:^0.18.1" - valibot: "npm:1.2.0" - bin: - hyperliquid: esm/bin/cli.js - checksum: 10/dd26b562d45d051192548f1c9f542b120e3a6db21a0a8a5f93d16e9f75c2bcefa297e2a12ee56828b9e1e87a373d6c18548c2388467d22ba8981a32c16486aab +"@nktkas/hyperliquid@npm:^0.32.2": + version: 0.32.2 + resolution: "@nktkas/hyperliquid@npm:0.32.2" + dependencies: + "@nktkas/rews": "npm:^2" + "@noble/hashes": "npm:^2" + valibot: "npm:1.3.1" + checksum: 10/58ffc50d51aa5842285697c45b2c8bc80a7e0a610b82220902f8f7acee2e58c4099dcc195ce1456130869c3e33c93d6445f02833a59997e8b937398991d8829e languageName: node linkType: hard -"@nktkas/rews@npm:^1.2.3": - version: 1.2.3 - resolution: "@nktkas/rews@npm:1.2.3" - checksum: 10/032d7373ba976167d6f8f24746e9f2ebf20768811943ce8d33ffbb28fab0ad6259800177bd9964449f8fd67c5ef7e781fcee9f1d9bbbffd55f133e4a4c6d9fce +"@nktkas/rews@npm:^2": + version: 2.1.0 + resolution: "@nktkas/rews@npm:2.1.0" + checksum: 10/c658d42d6ca79dad62d594818d680317e6f4ecc939149f02a588939b0e4fc40fb5b673199772241d4ca771b28f7bded8cbe0947d267f31a90ec6bc95d226c633 languageName: node linkType: hard @@ -10497,15 +10494,6 @@ __metadata: languageName: node linkType: hard -"@noble/curves@npm:^2.0.0": - version: 2.0.1 - resolution: "@noble/curves@npm:2.0.1" - dependencies: - "@noble/hashes": "npm:2.0.1" - checksum: 10/e826af523f40a671601a6d07f98df16c3afe1cbd0349c3ba4d7b31f6dba7dc743822719f260bd291716b6b42b8dc327f94a76b4852359aa85f79df461eb22bfc - languageName: node - linkType: hard - "@noble/hashes@npm:1.3.2": version: 1.3.2 resolution: "@noble/hashes@npm:1.3.2" @@ -10541,7 +10529,7 @@ __metadata: languageName: node linkType: hard -"@noble/hashes@npm:2.0.1, @noble/hashes@npm:^2.0.0, @noble/hashes@npm:^2.0.1": +"@noble/hashes@npm:^2": version: 2.0.1 resolution: "@noble/hashes@npm:2.0.1" checksum: 10/f4d00e7564eb4ff4e6d16be151dd0e404aede35f91e4372b0a8a6ec888379c1dd1e02c721b480af8e7853bea9637185b5cb9533970c5b77d60c254ead0cfd8f7 @@ -13132,13 +13120,6 @@ __metadata: languageName: node linkType: hard -"@scure/base@npm:2.0.0": - version: 2.0.0 - resolution: "@scure/base@npm:2.0.0" - checksum: 10/8fb86024f22e9c532d513b8df8a672252e58bd5695920ce646162287f0accd38e89cab58722a738b3d247b5dcf7760362ae2d82d502be7e62a555f5d98f8a110 - languageName: node - linkType: hard - "@scure/base@npm:~1.1.3, @scure/base@npm:~1.1.6": version: 1.1.9 resolution: "@scure/base@npm:1.1.9" @@ -35685,7 +35666,7 @@ __metadata: "@metamask/utils": "npm:^11.11.0" "@myx-trade/sdk": "npm:^0.1.265" "@ngraveio/bc-ur": "npm:^1.1.6" - "@nktkas/hyperliquid": "npm:^0.30.2" + "@nktkas/hyperliquid": "npm:^0.32.2" "@noble/curves": "npm:1.9.6" "@noble/hashes": "npm:1.8.0" "@notifee/react-native": "npm:^9.0.0" @@ -36327,17 +36308,6 @@ __metadata: languageName: node linkType: hard -"micro-eth-signer@npm:^0.18.1": - version: 0.18.1 - resolution: "micro-eth-signer@npm:0.18.1" - dependencies: - "@noble/curves": "npm:^2.0.0" - "@noble/hashes": "npm:^2.0.0" - micro-packed: "npm:^0.8.0" - checksum: 10/daa1127b0f4bffa1ffbe0c0d0f0d5bab98636697e1936a0fa552e0bb3b853b3f6733198219d2791323160feb30c12622b366dffd18ad794ec68a0a8fbaa255f1 - languageName: node - linkType: hard - "micro-ftch@npm:^0.3.1": version: 0.3.1 resolution: "micro-ftch@npm:0.3.1" @@ -36345,15 +36315,6 @@ __metadata: languageName: node linkType: hard -"micro-packed@npm:^0.8.0": - version: 0.8.0 - resolution: "micro-packed@npm:0.8.0" - dependencies: - "@scure/base": "npm:2.0.0" - checksum: 10/94bc96387be56d95ca758fcaddbeacdd8095344c3cc51b813637587f4b013853088f046d9a2e81354d583f384ec44c35aa008683aa13397d700ddf7b70aff77e - languageName: node - linkType: hard - "micromatch@npm:^4.0.2, micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": version: 4.0.8 resolution: "micromatch@npm:4.0.8" @@ -46734,15 +46695,15 @@ __metadata: languageName: node linkType: hard -"valibot@npm:1.2.0": - version: 1.2.0 - resolution: "valibot@npm:1.2.0" +"valibot@npm:1.3.1": + version: 1.3.1 + resolution: "valibot@npm:1.3.1" peerDependencies: typescript: ">=5" peerDependenciesMeta: typescript: optional: true - checksum: 10/5f9c15e6f5a2b8eae75332a3317e46e995a1763efe1b91e57bc5064e36f0feba734367c88013d53255bdf09fb9204bf3598d2ca0c3f468c8726095b1c3551926 + checksum: 10/e14d085fa87fbf41f76d040cdcf17e31527f868c8b82f878bc488a5bc3bc81162406c605182fc720473ec6dcff05393b89fb4a921a4206d9f7b6f76e3c93cf34 languageName: node linkType: hard