@multiplatform.one/web3 7.24.0 → 7.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/cjs/bridge/AuthBridge.cjs +124 -0
- package/dist/cjs/bridge/AuthBridge.native.js +186 -0
- package/dist/cjs/bridge/AuthBridge.native.js.map +1 -0
- package/dist/cjs/bridge/BridgeClient.cjs +12 -9
- package/dist/cjs/bridge/BridgeClient.native.js +17 -12
- package/dist/cjs/bridge/BridgeClient.native.js.map +1 -1
- package/dist/cjs/bridge/BridgeHost.cjs +11 -3
- package/dist/cjs/bridge/BridgeHost.native.js +11 -3
- package/dist/cjs/bridge/BridgeHost.native.js.map +1 -1
- package/dist/cjs/bridge/GpgBridge.cjs +61 -0
- package/dist/cjs/bridge/GpgBridge.native.js +111 -0
- package/dist/cjs/bridge/GpgBridge.native.js.map +1 -0
- package/dist/cjs/bridge/SuiBridge.cjs +51 -0
- package/dist/cjs/bridge/SuiBridge.native.js +99 -0
- package/dist/cjs/bridge/SuiBridge.native.js.map +1 -0
- package/dist/cjs/bridge/authTypes.cjs +28 -0
- package/dist/cjs/bridge/authTypes.native.js +31 -0
- package/dist/cjs/bridge/authTypes.native.js.map +1 -0
- package/dist/cjs/bridge/core.cjs +65 -0
- package/dist/cjs/bridge/core.native.js +68 -0
- package/dist/cjs/bridge/core.native.js.map +1 -0
- package/dist/cjs/bridge/hosting.cjs +91 -0
- package/dist/cjs/bridge/hosting.native.js +117 -0
- package/dist/cjs/bridge/hosting.native.js.map +1 -0
- package/dist/cjs/bridge/index.cjs +3 -17
- package/dist/cjs/bridge/index.native.js +2 -16
- package/dist/cjs/bridge/index.native.js.map +1 -1
- package/dist/cjs/bridge/nativeHost.cjs +91 -0
- package/dist/cjs/bridge/nativeHost.native.js +118 -0
- package/dist/cjs/bridge/nativeHost.native.js.map +1 -0
- package/dist/cjs/bridge/protocol.cjs +30 -1
- package/dist/cjs/bridge/protocol.native.js +147 -1
- package/dist/cjs/bridge/protocol.native.js.map +1 -1
- package/dist/cjs/core/family.cjs +88 -0
- package/dist/cjs/core/family.native.js +115 -0
- package/dist/cjs/core/family.native.js.map +1 -0
- package/dist/cjs/core/index.cjs +41 -0
- package/dist/cjs/core/index.native.js +44 -0
- package/dist/cjs/core/index.native.js.map +1 -0
- package/dist/cjs/core/message.cjs +89 -0
- package/dist/cjs/core/message.native.js +104 -0
- package/dist/cjs/core/message.native.js.map +1 -0
- package/dist/cjs/core/names.cjs +51 -0
- package/dist/cjs/core/names.native.js +95 -0
- package/dist/cjs/core/names.native.js.map +1 -0
- package/dist/cjs/core/react.cjs +48 -0
- package/dist/cjs/core/react.native.js +52 -0
- package/dist/cjs/core/react.native.js.map +1 -0
- package/dist/cjs/core/store.cjs +450 -0
- package/dist/cjs/core/store.native.js +637 -0
- package/dist/cjs/core/store.native.js.map +1 -0
- package/dist/cjs/core/types.cjs +18 -0
- package/dist/cjs/core/types.native.js +21 -0
- package/dist/cjs/core/types.native.js.map +1 -0
- package/dist/cjs/index.cjs +3 -1
- package/dist/cjs/index.native.js +2 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/providers/WalletProvider.cjs +2 -0
- package/dist/cjs/providers/WalletProvider.native.js +123 -90
- package/dist/cjs/providers/WalletProvider.native.js.map +1 -1
- package/dist/cjs/providers/index.cjs +1 -0
- package/dist/cjs/providers/index.native.js +1 -0
- package/dist/cjs/providers/index.native.js.map +1 -1
- package/dist/cjs/providers/native/deepLink.cjs +40 -23
- package/dist/cjs/providers/native/deepLink.native.js +43 -25
- package/dist/cjs/providers/native/deepLink.native.js.map +1 -1
- package/dist/cjs/providers/native/inject.cjs +2 -4
- package/dist/cjs/providers/native/inject.native.js +2 -4
- package/dist/cjs/providers/native/inject.native.js.map +1 -1
- package/dist/cjs/providers/walletBridge.cjs +35 -0
- package/dist/cjs/providers/walletBridge.native.js +38 -0
- package/dist/cjs/providers/walletBridge.native.js.map +1 -0
- package/dist/cjs/providers/walletConfig.native.js.map +1 -1
- package/dist/esm/bridge/AuthBridge.mjs +99 -0
- package/dist/esm/bridge/AuthBridge.mjs.map +1 -0
- package/dist/esm/bridge/AuthBridge.native.js +158 -0
- package/dist/esm/bridge/AuthBridge.native.js.map +1 -0
- package/dist/esm/bridge/BridgeClient.mjs +13 -10
- package/dist/esm/bridge/BridgeClient.mjs.map +1 -1
- package/dist/esm/bridge/BridgeClient.native.js +18 -13
- package/dist/esm/bridge/BridgeClient.native.js.map +1 -1
- package/dist/esm/bridge/BridgeHost.mjs +12 -4
- package/dist/esm/bridge/BridgeHost.mjs.map +1 -1
- package/dist/esm/bridge/BridgeHost.native.js +12 -4
- package/dist/esm/bridge/BridgeHost.native.js.map +1 -1
- package/dist/esm/bridge/GpgBridge.mjs +36 -0
- package/dist/esm/bridge/GpgBridge.mjs.map +1 -0
- package/dist/esm/bridge/GpgBridge.native.js +83 -0
- package/dist/esm/bridge/GpgBridge.native.js.map +1 -0
- package/dist/esm/bridge/SuiBridge.mjs +26 -0
- package/dist/esm/bridge/SuiBridge.mjs.map +1 -0
- package/dist/esm/bridge/SuiBridge.native.js +71 -0
- package/dist/esm/bridge/SuiBridge.native.js.map +1 -0
- package/dist/esm/bridge/authTypes.mjs +3 -0
- package/dist/esm/bridge/authTypes.mjs.map +1 -0
- package/dist/esm/bridge/authTypes.native.js +3 -0
- package/dist/esm/bridge/authTypes.native.js.map +1 -0
- package/dist/esm/bridge/core.mjs +17 -0
- package/dist/esm/bridge/core.mjs.map +1 -0
- package/dist/esm/bridge/core.native.js +17 -0
- package/dist/esm/bridge/core.native.js.map +1 -0
- package/dist/esm/bridge/hosting.mjs +62 -0
- package/dist/esm/bridge/hosting.mjs.map +1 -0
- package/dist/esm/bridge/hosting.native.js +85 -0
- package/dist/esm/bridge/hosting.native.js.map +1 -0
- package/dist/esm/bridge/index.mjs +2 -9
- package/dist/esm/bridge/index.mjs.map +1 -1
- package/dist/esm/bridge/index.native.js +2 -9
- package/dist/esm/bridge/index.native.js.map +1 -1
- package/dist/esm/bridge/nativeHost.mjs +65 -0
- package/dist/esm/bridge/nativeHost.mjs.map +1 -0
- package/dist/esm/bridge/nativeHost.native.js +89 -0
- package/dist/esm/bridge/nativeHost.native.js.map +1 -0
- package/dist/esm/bridge/protocol.mjs +28 -2
- package/dist/esm/bridge/protocol.mjs.map +1 -1
- package/dist/esm/bridge/protocol.native.js +145 -2
- package/dist/esm/bridge/protocol.native.js.map +1 -1
- package/dist/esm/core/family.mjs +62 -0
- package/dist/esm/core/family.mjs.map +1 -0
- package/dist/esm/core/family.native.js +86 -0
- package/dist/esm/core/family.native.js.map +1 -0
- package/dist/esm/core/index.mjs +7 -0
- package/dist/esm/core/index.mjs.map +1 -0
- package/dist/esm/core/index.native.js +7 -0
- package/dist/esm/core/index.native.js.map +1 -0
- package/dist/esm/core/message.mjs +63 -0
- package/dist/esm/core/message.mjs.map +1 -0
- package/dist/esm/core/message.native.js +75 -0
- package/dist/esm/core/message.native.js.map +1 -0
- package/dist/esm/core/names.mjs +25 -0
- package/dist/esm/core/names.mjs.map +1 -0
- package/dist/esm/core/names.native.js +66 -0
- package/dist/esm/core/names.native.js.map +1 -0
- package/dist/esm/core/react.mjs +21 -0
- package/dist/esm/core/react.mjs.map +1 -0
- package/dist/esm/core/react.native.js +22 -0
- package/dist/esm/core/react.native.js.map +1 -0
- package/dist/esm/core/store.mjs +424 -0
- package/dist/esm/core/store.mjs.map +1 -0
- package/dist/esm/core/store.native.js +608 -0
- package/dist/esm/core/store.native.js.map +1 -0
- package/dist/esm/core/types.mjs +2 -0
- package/dist/esm/core/types.mjs.map +1 -0
- package/dist/esm/core/types.native.js +2 -0
- package/dist/esm/core/types.native.js.map +1 -0
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/providers/WalletProvider.mjs +2 -1
- package/dist/esm/providers/WalletProvider.mjs.map +1 -1
- package/dist/esm/providers/WalletProvider.native.js +125 -93
- package/dist/esm/providers/WalletProvider.native.js.map +1 -1
- package/dist/esm/providers/index.mjs +2 -2
- package/dist/esm/providers/index.mjs.map +1 -1
- package/dist/esm/providers/index.native.js +2 -2
- package/dist/esm/providers/index.native.js.map +1 -1
- package/dist/esm/providers/native/deepLink.mjs +36 -24
- package/dist/esm/providers/native/deepLink.mjs.map +1 -1
- package/dist/esm/providers/native/deepLink.native.js +39 -26
- package/dist/esm/providers/native/deepLink.native.js.map +1 -1
- package/dist/esm/providers/native/inject.mjs +1 -3
- package/dist/esm/providers/native/inject.mjs.map +1 -1
- package/dist/esm/providers/native/inject.native.js +1 -3
- package/dist/esm/providers/native/inject.native.js.map +1 -1
- package/dist/esm/providers/walletBridge.mjs +9 -0
- package/dist/esm/providers/walletBridge.mjs.map +1 -0
- package/dist/esm/providers/walletBridge.native.js +9 -0
- package/dist/esm/providers/walletBridge.native.js.map +1 -0
- package/dist/esm/providers/walletConfig.mjs.map +1 -1
- package/dist/esm/providers/walletConfig.native.js.map +1 -1
- package/dist/jsx/bridge/AuthBridge.mjs +99 -0
- package/dist/jsx/bridge/AuthBridge.mjs.map +1 -0
- package/dist/jsx/bridge/AuthBridge.native.js +186 -0
- package/dist/jsx/bridge/AuthBridge.native.js.map +1 -0
- package/dist/jsx/bridge/BridgeClient.mjs +13 -10
- package/dist/jsx/bridge/BridgeClient.mjs.map +1 -1
- package/dist/jsx/bridge/BridgeClient.native.js +17 -12
- package/dist/jsx/bridge/BridgeClient.native.js.map +1 -1
- package/dist/jsx/bridge/BridgeHost.mjs +12 -4
- package/dist/jsx/bridge/BridgeHost.mjs.map +1 -1
- package/dist/jsx/bridge/BridgeHost.native.js +11 -3
- package/dist/jsx/bridge/BridgeHost.native.js.map +1 -1
- package/dist/jsx/bridge/GpgBridge.mjs +36 -0
- package/dist/jsx/bridge/GpgBridge.mjs.map +1 -0
- package/dist/jsx/bridge/GpgBridge.native.js +111 -0
- package/dist/jsx/bridge/GpgBridge.native.js.map +1 -0
- package/dist/jsx/bridge/SuiBridge.mjs +26 -0
- package/dist/jsx/bridge/SuiBridge.mjs.map +1 -0
- package/dist/jsx/bridge/SuiBridge.native.js +99 -0
- package/dist/jsx/bridge/SuiBridge.native.js.map +1 -0
- package/dist/jsx/bridge/authTypes.mjs +3 -0
- package/dist/jsx/bridge/authTypes.mjs.map +1 -0
- package/dist/jsx/bridge/authTypes.native.js +31 -0
- package/dist/jsx/bridge/authTypes.native.js.map +1 -0
- package/dist/jsx/bridge/core.mjs +17 -0
- package/dist/jsx/bridge/core.mjs.map +1 -0
- package/dist/jsx/bridge/core.native.js +68 -0
- package/dist/jsx/bridge/core.native.js.map +1 -0
- package/dist/jsx/bridge/hosting.mjs +62 -0
- package/dist/jsx/bridge/hosting.mjs.map +1 -0
- package/dist/jsx/bridge/hosting.native.js +117 -0
- package/dist/jsx/bridge/hosting.native.js.map +1 -0
- package/dist/jsx/bridge/index.mjs +2 -9
- package/dist/jsx/bridge/index.mjs.map +1 -1
- package/dist/jsx/bridge/index.native.js +2 -16
- package/dist/jsx/bridge/index.native.js.map +1 -1
- package/dist/jsx/bridge/nativeHost.mjs +65 -0
- package/dist/jsx/bridge/nativeHost.mjs.map +1 -0
- package/dist/jsx/bridge/nativeHost.native.js +118 -0
- package/dist/jsx/bridge/nativeHost.native.js.map +1 -0
- package/dist/jsx/bridge/protocol.mjs +28 -2
- package/dist/jsx/bridge/protocol.mjs.map +1 -1
- package/dist/jsx/bridge/protocol.native.js +147 -1
- package/dist/jsx/bridge/protocol.native.js.map +1 -1
- package/dist/jsx/core/family.mjs +62 -0
- package/dist/jsx/core/family.mjs.map +1 -0
- package/dist/jsx/core/family.native.js +115 -0
- package/dist/jsx/core/family.native.js.map +1 -0
- package/dist/jsx/core/index.mjs +7 -0
- package/dist/jsx/core/index.mjs.map +1 -0
- package/dist/jsx/core/index.native.js +44 -0
- package/dist/jsx/core/index.native.js.map +1 -0
- package/dist/jsx/core/message.mjs +63 -0
- package/dist/jsx/core/message.mjs.map +1 -0
- package/dist/jsx/core/message.native.js +104 -0
- package/dist/jsx/core/message.native.js.map +1 -0
- package/dist/jsx/core/names.mjs +25 -0
- package/dist/jsx/core/names.mjs.map +1 -0
- package/dist/jsx/core/names.native.js +95 -0
- package/dist/jsx/core/names.native.js.map +1 -0
- package/dist/jsx/core/react.mjs +21 -0
- package/dist/jsx/core/react.mjs.map +1 -0
- package/dist/jsx/core/react.native.js +52 -0
- package/dist/jsx/core/react.native.js.map +1 -0
- package/dist/jsx/core/store.mjs +424 -0
- package/dist/jsx/core/store.mjs.map +1 -0
- package/dist/jsx/core/store.native.js +637 -0
- package/dist/jsx/core/store.native.js.map +1 -0
- package/dist/jsx/core/types.mjs +2 -0
- package/dist/jsx/core/types.mjs.map +1 -0
- package/dist/jsx/core/types.native.js +21 -0
- package/dist/jsx/core/types.native.js.map +1 -0
- package/dist/jsx/index.js +3 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +3 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +2 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/providers/WalletProvider.mjs +2 -1
- package/dist/jsx/providers/WalletProvider.mjs.map +1 -1
- package/dist/jsx/providers/WalletProvider.native.js +123 -90
- package/dist/jsx/providers/WalletProvider.native.js.map +1 -1
- package/dist/jsx/providers/index.mjs +2 -2
- package/dist/jsx/providers/index.mjs.map +1 -1
- package/dist/jsx/providers/index.native.js +1 -0
- package/dist/jsx/providers/index.native.js.map +1 -1
- package/dist/jsx/providers/native/deepLink.mjs +36 -24
- package/dist/jsx/providers/native/deepLink.mjs.map +1 -1
- package/dist/jsx/providers/native/deepLink.native.js +43 -25
- package/dist/jsx/providers/native/deepLink.native.js.map +1 -1
- package/dist/jsx/providers/native/inject.mjs +1 -3
- package/dist/jsx/providers/native/inject.mjs.map +1 -1
- package/dist/jsx/providers/native/inject.native.js +2 -4
- package/dist/jsx/providers/native/inject.native.js.map +1 -1
- package/dist/jsx/providers/walletBridge.mjs +9 -0
- package/dist/jsx/providers/walletBridge.mjs.map +1 -0
- package/dist/jsx/providers/walletBridge.native.js +38 -0
- package/dist/jsx/providers/walletBridge.native.js.map +1 -0
- package/dist/jsx/providers/walletConfig.mjs.map +1 -1
- package/dist/jsx/providers/walletConfig.native.js.map +1 -1
- package/docs/bridge-protocol.md +485 -0
- package/package.json +14 -6
- package/src/bridge/AuthBridge.ts +146 -0
- package/src/bridge/BridgeClient.spec.ts +12 -0
- package/src/bridge/BridgeClient.ts +15 -10
- package/src/bridge/BridgeHost.spec.ts +20 -4
- package/src/bridge/BridgeHost.ts +16 -5
- package/src/bridge/GpgBridge.ts +49 -0
- package/src/bridge/SuiBridge.ts +34 -0
- package/src/bridge/authTypes.ts +76 -0
- package/src/bridge/core.ts +42 -0
- package/src/bridge/hosting.spec.ts +98 -0
- package/src/bridge/hosting.ts +99 -0
- package/src/bridge/index.ts +1 -8
- package/src/bridge/nativeHost.spec.ts +165 -0
- package/src/bridge/nativeHost.ts +120 -0
- package/src/bridge/protocol.spec.ts +24 -1
- package/src/bridge/protocol.ts +44 -1
- package/src/core/family.spec.ts +117 -0
- package/src/core/family.ts +103 -0
- package/src/core/imports.spec.ts +82 -0
- package/src/core/index.ts +47 -0
- package/src/core/message.spec.ts +178 -0
- package/src/core/message.ts +119 -0
- package/src/core/names.ts +29 -0
- package/src/core/react.spec.tsx +75 -0
- package/src/core/react.ts +34 -0
- package/src/core/store.spec.ts +890 -0
- package/src/core/store.ts +558 -0
- package/src/core/types.ts +96 -0
- package/src/index.ts +6 -0
- package/src/providers/WalletProvider.native.tsx +139 -85
- package/src/providers/WalletProvider.tsx +1 -1
- package/src/providers/index.ts +2 -0
- package/src/providers/native/deepLink.spec.ts +73 -1
- package/src/providers/native/deepLink.ts +76 -28
- package/src/providers/native/inject.ts +1 -9
- package/src/providers/walletBridge.ts +24 -0
- package/src/providers/walletConfig.ts +15 -1
- package/types/bridge/AuthBridge.d.ts +58 -0
- package/types/bridge/AuthBridge.d.ts.map +1 -0
- package/types/bridge/BridgeClient.d.ts +3 -1
- package/types/bridge/BridgeClient.d.ts.map +1 -1
- package/types/bridge/BridgeHost.d.ts +1 -1
- package/types/bridge/BridgeHost.d.ts.map +1 -1
- package/types/bridge/GpgBridge.d.ts +23 -0
- package/types/bridge/GpgBridge.d.ts.map +1 -0
- package/types/bridge/SuiBridge.d.ts +18 -0
- package/types/bridge/SuiBridge.d.ts.map +1 -0
- package/types/bridge/authTypes.d.ts +71 -0
- package/types/bridge/authTypes.d.ts.map +1 -0
- package/types/bridge/core.d.ts +16 -0
- package/types/bridge/core.d.ts.map +1 -0
- package/types/bridge/hosting.d.ts +34 -0
- package/types/bridge/hosting.d.ts.map +1 -0
- package/types/bridge/index.d.ts +1 -8
- package/types/bridge/index.d.ts.map +1 -1
- package/types/bridge/nativeHost.d.ts +55 -0
- package/types/bridge/nativeHost.d.ts.map +1 -0
- package/types/bridge/protocol.d.ts +34 -1
- package/types/bridge/protocol.d.ts.map +1 -1
- package/types/core/family.d.ts +44 -0
- package/types/core/family.d.ts.map +1 -0
- package/types/core/index.d.ts +7 -0
- package/types/core/index.d.ts.map +1 -0
- package/types/core/message.d.ts +44 -0
- package/types/core/message.d.ts.map +1 -0
- package/types/core/names.d.ts +7 -0
- package/types/core/names.d.ts.map +1 -0
- package/types/core/react.d.ts +14 -0
- package/types/core/react.d.ts.map +1 -0
- package/types/core/store.d.ts +64 -0
- package/types/core/store.d.ts.map +1 -0
- package/types/core/types.d.ts +88 -0
- package/types/core/types.d.ts.map +1 -0
- package/types/index.d.ts +2 -1
- package/types/index.d.ts.map +1 -1
- package/types/providers/WalletProvider.d.ts +1 -0
- package/types/providers/WalletProvider.d.ts.map +1 -1
- package/types/providers/WalletProvider.native.d.ts +2 -1
- package/types/providers/WalletProvider.native.d.ts.map +1 -1
- package/types/providers/index.d.ts +1 -1
- package/types/providers/index.d.ts.map +1 -1
- package/types/providers/native/deepLink.d.ts +29 -4
- package/types/providers/native/deepLink.d.ts.map +1 -1
- package/types/providers/native/inject.d.ts +1 -7
- package/types/providers/native/inject.d.ts.map +1 -1
- package/types/providers/walletBridge.d.ts +17 -0
- package/types/providers/walletBridge.d.ts.map +1 -0
- package/types/providers/walletConfig.d.ts +18 -1
- package/types/providers/walletConfig.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createBridgeConnector"],"sources":["../../../src/bridge/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,SAASA,qBAAA,QAA6B","ignoreList":[]}
|
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
export * from "./transport.native.js";
|
|
3
|
-
import { createPostMessageTransport } from "./postMessageTransport.native.js";
|
|
4
|
-
import { BridgeClient } from "./BridgeClient.native.js";
|
|
5
|
-
import { BridgeHost } from "./BridgeHost.native.js";
|
|
6
|
-
import { createBridgeProvider } from "./eip1193.native.js";
|
|
1
|
+
export * from "./core.native.js";
|
|
7
2
|
import { createBridgeConnector } from "./bridgeConnector.native.js";
|
|
8
|
-
|
|
9
|
-
import { SolanaBridge } from "./SolanaBridge.native.js";
|
|
10
|
-
export { BridgeClient, BridgeHost, SolanaBridge, base64ToBytes, bytesToBase64, createBridgeConnector, createBridgeProvider, createPostMessageTransport };
|
|
3
|
+
export { createBridgeConnector };
|
|
11
4
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createBridgeConnector"],"sources":["../../../src/bridge/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,SAASA,qBAAA,QAA6B","ignoreList":[]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { BridgeClient } from "./BridgeClient.mjs";
|
|
2
|
+
import { hostedPageOrigin, parseOrigin } from "./hosting.mjs";
|
|
3
|
+
import { createPostMessageTransport } from "./postMessageTransport.mjs";
|
|
4
|
+
import { BRIDGE_PROTOCOL_VERSION } from "./protocol.mjs";
|
|
5
|
+
function buildInjectScript(raw, pageOrigin) {
|
|
6
|
+
const guard = pageOrigin ? `window.location && window.location.origin === ${JSON.stringify(pageOrigin)} && ` : "";
|
|
7
|
+
return `${guard}window.__bridgeReceive && window.__bridgeReceive(${JSON.stringify(raw)});true;`;
|
|
8
|
+
}
|
|
9
|
+
function createNativeBridge(options) {
|
|
10
|
+
const pageOrigin = hostedPageOrigin(options.pageUrl, {
|
|
11
|
+
allowDevHosts: options.allowDevHosts
|
|
12
|
+
});
|
|
13
|
+
const queue = [];
|
|
14
|
+
let peer = null;
|
|
15
|
+
let reloads = 0;
|
|
16
|
+
const transport = createPostMessageTransport(raw => {
|
|
17
|
+
if (peer) options.inject(buildInjectScript(raw, pageOrigin));else queue.push(raw);
|
|
18
|
+
});
|
|
19
|
+
const offReady = transport.subscribe(message => {
|
|
20
|
+
if (message.ns !== "sys" || message.kind !== "event" || message.method !== "ready") return;
|
|
21
|
+
if (peer) client.rejectPending(new Error("The wallet page reloaded"));
|
|
22
|
+
reloads = 0;
|
|
23
|
+
const params = message.params;
|
|
24
|
+
peer = {
|
|
25
|
+
protocol: typeof params?.protocol === "number" ? params.protocol : BRIDGE_PROTOCOL_VERSION,
|
|
26
|
+
namespaces: Array.isArray(params?.namespaces) ? params.namespaces : []
|
|
27
|
+
};
|
|
28
|
+
for (const raw of queue.splice(0)) options.inject(buildInjectScript(raw, pageOrigin));
|
|
29
|
+
options.onReady?.(peer);
|
|
30
|
+
});
|
|
31
|
+
const client = new BridgeClient(transport, {
|
|
32
|
+
timeoutMs: options.timeoutMs
|
|
33
|
+
});
|
|
34
|
+
const pageGone = () => {
|
|
35
|
+
peer = null;
|
|
36
|
+
queue.length = 0;
|
|
37
|
+
client.rejectPending(new Error("The wallet page went away"));
|
|
38
|
+
};
|
|
39
|
+
return {
|
|
40
|
+
client,
|
|
41
|
+
pageOrigin,
|
|
42
|
+
get peer() {
|
|
43
|
+
return peer;
|
|
44
|
+
},
|
|
45
|
+
receive(data, fromUrl) {
|
|
46
|
+
if (!fromUrl || parseOrigin(fromUrl)?.origin !== pageOrigin) return;
|
|
47
|
+
transport.receive(data);
|
|
48
|
+
},
|
|
49
|
+
navigated(url) {
|
|
50
|
+
if (url.trim().toLowerCase() === "about:blank") return false;
|
|
51
|
+
if (parseOrigin(url)?.origin === pageOrigin) return false;
|
|
52
|
+
pageGone();
|
|
53
|
+
reloads += 1;
|
|
54
|
+
return reloads <= 2;
|
|
55
|
+
},
|
|
56
|
+
pageGone,
|
|
57
|
+
dispose() {
|
|
58
|
+
offReady();
|
|
59
|
+
client.dispose();
|
|
60
|
+
queue.length = 0;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export { buildInjectScript, createNativeBridge };
|
|
65
|
+
//# sourceMappingURL=nativeHost.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BridgeClient","hostedPageOrigin","parseOrigin","createPostMessageTransport","BRIDGE_PROTOCOL_VERSION","buildInjectScript","raw","pageOrigin","guard","JSON","stringify","createNativeBridge","options","pageUrl","allowDevHosts","queue","peer","reloads","transport","inject","push","offReady","subscribe","message","ns","kind","method","client","rejectPending","Error","params","protocol","namespaces","Array","isArray","splice","onReady","timeoutMs","pageGone","length","receive","data","fromUrl","origin","navigated","url","trim","toLowerCase","dispose"],"sources":["../../../src/bridge/nativeHost.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,YAAA,QAAoB;AAC7B,SAASC,gBAAA,EAAkBC,WAAA,QAAmB;AAC9C,SAASC,0BAAA,QAAkC;AAC3C,SAASC,uBAAA,QAAiD;AAiDnD,SAASC,kBAAkBC,GAAA,EAAaC,UAAA,EAA6B;EAC1E,MAAMC,KAAA,GAAQD,UAAA,GACV,iDAAiDE,IAAA,CAAKC,SAAA,CAAUH,UAAU,CAAC,SAC3E;EACJ,OAAO,GAAGC,KAAK,oDAAoDC,IAAA,CAAKC,SAAA,CAAUJ,GAAG,CAAC;AACxF;AAOO,SAASK,mBAAmBC,OAAA,EAA4C;EAC7E,MAAML,UAAA,GAAaN,gBAAA,CAAiBW,OAAA,CAAQC,OAAA,EAAS;IAAEC,aAAA,EAAeF,OAAA,CAAQE;EAAc,CAAC;EAC7F,MAAMC,KAAA,GAAkB,EAAC;EACzB,IAAIC,IAAA,GAA2B;EAC/B,IAAIC,OAAA,GAAU;EAEd,MAAMC,SAAA,GAAYf,0BAAA,CAA4BG,GAAA,IAAQ;IACpD,IAAIU,IAAA,EAAMJ,OAAA,CAAQO,MAAA,CAAOd,iBAAA,CAAkBC,GAAA,EAAKC,UAAU,CAAC,OACtDQ,KAAA,CAAMK,IAAA,CAAKd,GAAG;EACrB,CAAC;EACD,MAAMe,QAAA,GAAWH,SAAA,CAAUI,SAAA,CAAWC,OAAA,IAAY;IAChD,IAAIA,OAAA,CAAQC,EAAA,KAAO,SAASD,OAAA,CAAQE,IAAA,KAAS,WAAWF,OAAA,CAAQG,MAAA,KAAW,SAAS;IAEpF,IAAIV,IAAA,EAAMW,MAAA,CAAOC,aAAA,CAAc,IAAIC,KAAA,CAAM,0BAA0B,CAAC;IACpEZ,OAAA,GAAU;IACV,MAAMa,MAAA,GAASP,OAAA,CAAQO,MAAA;IACvBd,IAAA,GAAO;MACLe,QAAA,EAAU,OAAOD,MAAA,EAAQC,QAAA,KAAa,WAAWD,MAAA,CAAOC,QAAA,GAAW3B,uBAAA;MACnE4B,UAAA,EAAYC,KAAA,CAAMC,OAAA,CAAQJ,MAAA,EAAQE,UAAU,IAAIF,MAAA,CAAOE,UAAA,GAAa;IACtE;IACA,WAAW1B,GAAA,IAAOS,KAAA,CAAMoB,MAAA,CAAO,CAAC,GAAGvB,OAAA,CAAQO,MAAA,CAAOd,iBAAA,CAAkBC,GAAA,EAAKC,UAAU,CAAC;IACpFK,OAAA,CAAQwB,OAAA,GAAUpB,IAAI;EACxB,CAAC;EACD,MAAMW,MAAA,GAAS,IAAI3B,YAAA,CAAakB,SAAA,EAAW;IAAEmB,SAAA,EAAWzB,OAAA,CAAQyB;EAAU,CAAC;EAE3E,MAAMC,QAAA,GAAWA,CAAA,KAAM;IACrBtB,IAAA,GAAO;IACPD,KAAA,CAAMwB,MAAA,GAAS;IACfZ,MAAA,CAAOC,aAAA,CAAc,IAAIC,KAAA,CAAM,2BAA2B,CAAC;EAC7D;EAEA,OAAO;IACLF,MAAA;IACApB,UAAA;IACA,IAAIS,KAAA,EAAO;MACT,OAAOA,IAAA;IACT;IACAwB,QAAQC,IAAA,EAAMC,OAAA,EAAS;MACrB,IAAI,CAACA,OAAA,IAAWxC,WAAA,CAAYwC,OAAO,GAAGC,MAAA,KAAWpC,UAAA,EAAY;MAC7DW,SAAA,CAAUsB,OAAA,CAAQC,IAAI;IACxB;IACAG,UAAUC,GAAA,EAAK;MACb,IAAIA,GAAA,CAAIC,IAAA,CAAK,EAAEC,WAAA,CAAY,MAAM,eAAe,OAAO;MACvD,IAAI7C,WAAA,CAAY2C,GAAG,GAAGF,MAAA,KAAWpC,UAAA,EAAY,OAAO;MACpD+B,QAAA,CAAS;MACTrB,OAAA,IAAW;MACX,OAAOA,OAAA,IAAW;IACpB;IACAqB,QAAA;IACAU,QAAA,EAAU;MACR3B,QAAA,CAAS;MACTM,MAAA,CAAOqB,OAAA,CAAQ;MACfjC,KAAA,CAAMwB,MAAA,GAAS;IACjB;EACF;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { BridgeClient } from "./BridgeClient.native.js";
|
|
2
|
+
import { hostedPageOrigin, parseOrigin } from "./hosting.native.js";
|
|
3
|
+
import { createPostMessageTransport } from "./postMessageTransport.native.js";
|
|
4
|
+
import { BRIDGE_PROTOCOL_VERSION } from "./protocol.native.js";
|
|
5
|
+
function buildInjectScript(raw, pageOrigin) {
|
|
6
|
+
var guard = pageOrigin ? `window.location && window.location.origin === ${JSON.stringify(pageOrigin)} && ` : "";
|
|
7
|
+
return `${guard}window.__bridgeReceive && window.__bridgeReceive(${JSON.stringify(raw)});true;`;
|
|
8
|
+
}
|
|
9
|
+
function createNativeBridge(options) {
|
|
10
|
+
var pageOrigin = hostedPageOrigin(options.pageUrl, {
|
|
11
|
+
allowDevHosts: options.allowDevHosts
|
|
12
|
+
});
|
|
13
|
+
var queue = [];
|
|
14
|
+
var peer = null;
|
|
15
|
+
var reloads = 0;
|
|
16
|
+
var transport = createPostMessageTransport(function (raw) {
|
|
17
|
+
if (peer) options.inject(buildInjectScript(raw, pageOrigin));else queue.push(raw);
|
|
18
|
+
});
|
|
19
|
+
var offReady = transport.subscribe(function (message) {
|
|
20
|
+
var _options_onReady;
|
|
21
|
+
if (message.ns !== "sys" || message.kind !== "event" || message.method !== "ready") return;
|
|
22
|
+
if (peer) client.rejectPending(new Error("The wallet page reloaded"));
|
|
23
|
+
reloads = 0;
|
|
24
|
+
var params = message.params;
|
|
25
|
+
peer = {
|
|
26
|
+
protocol: typeof (params === null || params === void 0 ? void 0 : params.protocol) === "number" ? params.protocol : BRIDGE_PROTOCOL_VERSION,
|
|
27
|
+
namespaces: Array.isArray(params === null || params === void 0 ? void 0 : params.namespaces) ? params.namespaces : []
|
|
28
|
+
};
|
|
29
|
+
var _iteratorNormalCompletion = true,
|
|
30
|
+
_didIteratorError = false,
|
|
31
|
+
_iteratorError = void 0;
|
|
32
|
+
try {
|
|
33
|
+
for (var _iterator = queue.splice(0)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
34
|
+
var raw = _step.value;
|
|
35
|
+
options.inject(buildInjectScript(raw, pageOrigin));
|
|
36
|
+
}
|
|
37
|
+
} catch (err) {
|
|
38
|
+
_didIteratorError = true;
|
|
39
|
+
_iteratorError = err;
|
|
40
|
+
} finally {
|
|
41
|
+
try {
|
|
42
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
43
|
+
_iterator.return();
|
|
44
|
+
}
|
|
45
|
+
} finally {
|
|
46
|
+
if (_didIteratorError) {
|
|
47
|
+
throw _iteratorError;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
(_options_onReady = options.onReady) === null || _options_onReady === void 0 ? void 0 : _options_onReady.call(options, peer);
|
|
52
|
+
});
|
|
53
|
+
var client = new BridgeClient(transport, {
|
|
54
|
+
timeoutMs: options.timeoutMs
|
|
55
|
+
});
|
|
56
|
+
var pageGone = function pageGone2() {
|
|
57
|
+
peer = null;
|
|
58
|
+
queue.length = 0;
|
|
59
|
+
client.rejectPending(new Error("The wallet page went away"));
|
|
60
|
+
};
|
|
61
|
+
return {
|
|
62
|
+
client,
|
|
63
|
+
pageOrigin,
|
|
64
|
+
get peer() {
|
|
65
|
+
return peer;
|
|
66
|
+
},
|
|
67
|
+
receive(data, fromUrl) {
|
|
68
|
+
var _parseOrigin;
|
|
69
|
+
if (!fromUrl || ((_parseOrigin = parseOrigin(fromUrl)) === null || _parseOrigin === void 0 ? void 0 : _parseOrigin.origin) !== pageOrigin) return;
|
|
70
|
+
transport.receive(data);
|
|
71
|
+
},
|
|
72
|
+
navigated(url) {
|
|
73
|
+
var _parseOrigin;
|
|
74
|
+
if (url.trim().toLowerCase() === "about:blank") return false;
|
|
75
|
+
if (((_parseOrigin = parseOrigin(url)) === null || _parseOrigin === void 0 ? void 0 : _parseOrigin.origin) === pageOrigin) return false;
|
|
76
|
+
pageGone();
|
|
77
|
+
reloads += 1;
|
|
78
|
+
return reloads <= 2;
|
|
79
|
+
},
|
|
80
|
+
pageGone,
|
|
81
|
+
dispose() {
|
|
82
|
+
offReady();
|
|
83
|
+
client.dispose();
|
|
84
|
+
queue.length = 0;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export { buildInjectScript, createNativeBridge };
|
|
89
|
+
//# sourceMappingURL=nativeHost.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BridgeClient","hostedPageOrigin","parseOrigin","createPostMessageTransport","BRIDGE_PROTOCOL_VERSION","buildInjectScript","raw","pageOrigin","guard","JSON","stringify","createNativeBridge","options","pageUrl","allowDevHosts","queue","peer","reloads","transport","inject","push","offReady","subscribe","message","_options_onReady","ns","kind","method","client","rejectPending","Error","params","protocol","namespaces","Array","isArray","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","splice","Symbol","iterator","_step","next","done","value","err","return","onReady","call","timeoutMs","pageGone","pageGone2","length"],"sources":["../../../src/bridge/nativeHost.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,YAAA,QAAoB;AAC7B,SAASC,gBAAA,EAAkBC,WAAA,QAAmB;AAC9C,SAASC,0BAAA,QAAkC;AAC3C,SAASC,uBAAA,QAAiD;AAiDnD,SAASC,kBAAkBC,GAAA,EAAaC,UAAA,EAA6B;EAC1E,IAAAC,KAAM,GAAAD,UAAQ,oDACVE,IAAiD,CAAAC,SAAK,CAAAH,UAAU,OAAW,KAC3E;EACJ,OAAO,GAAGC,KAAK,oDAAoDC,IAAA,CAAKC,SAAA,CAAUJ,GAAG,CAAC;AACxF;AAOO,SAASK,mBAAmBC,OAAA,EAA4C;EAC7E,IAAAL,UAAM,GAAAN,gBAAa,CAAAW,OAAiB,CAAAC,OAAQ;IAC5CC,aAAyB,EAAAF,OAAA,CAAAE;EACzB;EACA,IAAIC,KAAA,KAAU;EAEd,IAAAC,IAAM;EACJ,IAAAC,OAAU;EAAiD,IAAAC,SAChD,GAAAf,0BAAQ,WAAAG,GAAA;IACpB,IAAAU,IAAA,EAAAJ,OAAA,CAAAO,MAAA,CAAAd,iBAAA,CAAAC,GAAA,EAAAC,UAAA,QACKQ,KAAA,CAAAK,IAAW,CAAAd,GAAA;EACf;EAEA,IAAAe,QAAU,GAAAH,SAAO,CAAAI,SAAc,WAAUC,OAAA;IACzC,IAAAC,gBAAU;IACV,IAAAD,OAAM,CAAAE,EAAA,KAAS,KAAQ,IAAAF,OAAA,CAAAG,IAAA,gBAAAH,OAAA,CAAAI,MAAA;IACvB,IAAAX,IAAO,EAAAY,MAAA,CAAAC,aAAA,KAAAC,KAAA;IAAAb,OACL;IAAmE,IACnEc,MAAA,GAAAR,OAAkB,CAAAQ,MAAA;IACpBf,IAAA;MACAgB,QAAA,EAAW,QAAOD,MAAM,KAAO,IAAI,IAAAA,MAAQ,KAAO,kBAAkBA,MAAK,CAAAC,QAAU,CAAC,gBAAAD,MAAA,CAAAC,QAAA,GAAA5B,uBAAA;MACpF6B,UAAQ,EAAAC,KAAU,CAAAC,OAAI,CAAAJ,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,UAAA,IAAAF,MAAA,CAAAE,UAAA;IACvB;IACD,IAAMG,yBAAa,GAAa;MAAAC,iBAAwB,QAAQ;MAAAC,cAAW;IAE3E,IAAM;MACJ,KAAO,IAAAC,SAAA,GAAAxB,KAAA,CAAAyB,MAAA,IAAAC,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAP,yBAAA,IAAAO,KAAA,GAAAJ,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAT,yBAAA;QACP,IAAM9B,GAAA,GAAAqC,KAAS,CAAAG,KAAA;QACflC,OAAO,CAAAO,MAAA,CAAAd,iBAAwB,CAAAC,GAAA,EAAAC,UAAA;MACjC;IAEA,SAAOwC,GAAA;MACLV,iBAAA;MACAC,cAAA,GAAAS,GAAA;IACA,UAAI;MACF;QACF,KAAAX,yBAAA,IAAAG,SAAA,CAAAS,MAAA;UACAT,SAAc,CAAAS,MAAA,CAAS;QACrB;MACA,UAAU;QACZ,IAAAX,iBAAA;UACA,MAAUC,cAAK;QACb;MACA;IACA;IACA,CAAAd,gBAAW,GAAAZ,OAAA,CAAAqC,OAAA,cAAAzB,gBAAA,uBAAAA,gBAAA,CAAA0B,IAAA,CAAAtC,OAAA,EAAAI,IAAA;EACX;EAAkB,IACpBY,MAAA,OAAA5B,YAAA,CAAAkB,SAAA;IACAiC,SAAA,EAAAvC,OAAA,CAAAuC;EAAA,EACA;EACE,IAAAC,QAAA,GAAS,SAAAC,UAAA;IACTrC,IAAA,OAAO;IACPD,KAAA,CAAAuC,MAAM;IACR1B,MAAA,CAAAC,aAAA,KAAAC,KAAA;EACF;EACF","ignoreList":[]}
|
|
@@ -1,5 +1,31 @@
|
|
|
1
|
-
const
|
|
1
|
+
const BRIDGE_PROTOCOL_VERSION = 1;
|
|
2
|
+
const NAMESPACES = ["evm", "solana", "sui", "gpg", "auth", "sys"];
|
|
2
3
|
const KINDS = ["req", "res", "event"];
|
|
4
|
+
const BridgeErrorCode = {
|
|
5
|
+
userRejected: 4001,
|
|
6
|
+
unsupportedMethod: 4200,
|
|
7
|
+
methodNotFound: -32601,
|
|
8
|
+
invalidParams: -32602,
|
|
9
|
+
internal: -32e3,
|
|
10
|
+
/** The page is not served over https (or loopback http), so it cannot sign in. */
|
|
11
|
+
pageNotHosted: -32001,
|
|
12
|
+
/** Keycloak refused the request; `data` carries `status`, `error`, `errorDescription`. */
|
|
13
|
+
keycloakRefused: -32002,
|
|
14
|
+
/** No wallet or signer for the requested family is available in the page. */
|
|
15
|
+
walletUnavailable: -32003,
|
|
16
|
+
/** The account has required actions left and no onboarding client was given. */
|
|
17
|
+
profileIncomplete: -32004
|
|
18
|
+
};
|
|
19
|
+
class BridgeRequestError extends Error {
|
|
20
|
+
code;
|
|
21
|
+
data;
|
|
22
|
+
constructor(code, message, data) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.name = "BridgeRequestError";
|
|
25
|
+
this.code = code;
|
|
26
|
+
if (data !== void 0) this.data = data;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
3
29
|
function isBridgeMessage(value) {
|
|
4
30
|
if (typeof value !== "object" || value === null) return false;
|
|
5
31
|
const m = value;
|
|
@@ -14,5 +40,5 @@ function newRequestId() {
|
|
|
14
40
|
counter += 1;
|
|
15
41
|
return `${counter}-${Math.floor((globalThis.performance?.now?.() ?? counter) * 1e3)}`;
|
|
16
42
|
}
|
|
17
|
-
export { KINDS, NAMESPACES, isBridgeMessage, newRequestId };
|
|
43
|
+
export { BRIDGE_PROTOCOL_VERSION, BridgeErrorCode, BridgeRequestError, KINDS, NAMESPACES, isBridgeMessage, newRequestId };
|
|
18
44
|
//# sourceMappingURL=protocol.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NAMESPACES","KINDS","isBridgeMessage","value","m","includes","ns","kind","id","method","counter","newRequestId","Math","floor","globalThis","performance","now"],"sources":["../../../src/bridge/protocol.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["BRIDGE_PROTOCOL_VERSION","NAMESPACES","KINDS","BridgeErrorCode","userRejected","unsupportedMethod","methodNotFound","invalidParams","internal","pageNotHosted","keycloakRefused","walletUnavailable","profileIncomplete","BridgeRequestError","Error","code","data","constructor","message","name","isBridgeMessage","value","m","includes","ns","kind","id","method","counter","newRequestId","Math","floor","globalThis","performance","now"],"sources":["../../../src/bridge/protocol.ts"],"sourcesContent":[null],"mappings":"AAIO,MAAMA,uBAAA,GAA0B;AAEhC,MAAMC,UAAA,GAAa,CAAC,OAAO,UAAU,OAAO,OAAO,QAAQ,KAAK;AAGhE,MAAMC,KAAA,GAAQ,CAAC,OAAO,OAAO,OAAO;AAIpC,MAAMC,eAAA,GAAkB;EAC7BC,YAAA,EAAc;EACdC,iBAAA,EAAmB;EACnBC,cAAA,EAAgB;EAChBC,aAAA,EAAe;EACfC,QAAA,EAAU;EAAA;EAEVC,aAAA,EAAe;EAAA;EAEfC,eAAA,EAAiB;EAAA;EAEjBC,iBAAA,EAAmB;EAAA;EAEnBC,iBAAA,EAAmB;AACrB;AA0BO,MAAMC,kBAAA,SAA2BC,KAAA,CAAM;EACnCC,IAAA;EACAC,IAAA;EAETC,YAAYF,IAAA,EAAcG,OAAA,EAAiBF,IAAA,EAAgB;IACzD,MAAME,OAAO;IACb,KAAKC,IAAA,GAAO;IACZ,KAAKJ,IAAA,GAAOA,IAAA;IACZ,IAAIC,IAAA,KAAS,QAAW,KAAKA,IAAA,GAAOA,IAAA;EACtC;AACF;AAEO,SAASI,gBAAgBC,KAAA,EAAwC;EACtE,IAAI,OAAOA,KAAA,KAAU,YAAYA,KAAA,KAAU,MAAM,OAAO;EACxD,MAAMC,CAAA,GAAID,KAAA;EACV,IAAI,CAACpB,UAAA,CAAWsB,QAAA,CAASD,CAAA,CAAEE,EAAe,GAAG,OAAO;EACpD,IAAI,CAACtB,KAAA,CAAMqB,QAAA,CAASD,CAAA,CAAEG,IAAY,GAAG,OAAO;EAC5C,IAAIH,CAAA,CAAEI,EAAA,KAAO,UAAa,OAAOJ,CAAA,CAAEI,EAAA,KAAO,UAAU,OAAO;EAC3D,IAAIJ,CAAA,CAAEK,MAAA,KAAW,UAAa,OAAOL,CAAA,CAAEK,MAAA,KAAW,UAAU,OAAO;EACnE,OAAO;AACT;AAEA,IAAIC,OAAA,GAAU;AACP,SAASC,aAAA,EAAuB;EAErCD,OAAA,IAAW;EACX,OAAO,GAAGA,OAAO,IAAIE,IAAA,CAAKC,KAAA,EAAOC,UAAA,CAAWC,WAAA,EAAaC,GAAA,GAAM,KAAKN,OAAA,IAAW,GAAI,CAAC;AACtF","ignoreList":[]}
|
|
@@ -1,10 +1,153 @@
|
|
|
1
|
+
function _assert_this_initialized(self) {
|
|
2
|
+
if (self === void 0) {
|
|
3
|
+
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
4
|
+
}
|
|
5
|
+
return self;
|
|
6
|
+
}
|
|
7
|
+
function _call_super(_this, derived, args) {
|
|
8
|
+
derived = _get_prototype_of(derived);
|
|
9
|
+
return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
|
|
10
|
+
}
|
|
11
|
+
function _class_call_check(instance, Constructor) {
|
|
12
|
+
if (!(instance instanceof Constructor)) {
|
|
13
|
+
throw new TypeError("Cannot call a class as a function");
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function _construct(Parent, args, Class) {
|
|
17
|
+
if (_is_native_reflect_construct()) {
|
|
18
|
+
_construct = Reflect.construct;
|
|
19
|
+
} else {
|
|
20
|
+
_construct = function construct(Parent2, args2, Class2) {
|
|
21
|
+
var a = [null];
|
|
22
|
+
a.push.apply(a, args2);
|
|
23
|
+
var Constructor = Function.bind.apply(Parent2, a);
|
|
24
|
+
var instance = new Constructor();
|
|
25
|
+
if (Class2) _set_prototype_of(instance, Class2.prototype);
|
|
26
|
+
return instance;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
return _construct.apply(null, arguments);
|
|
30
|
+
}
|
|
31
|
+
function _define_property(obj, key, value) {
|
|
32
|
+
if (key in obj) {
|
|
33
|
+
Object.defineProperty(obj, key, {
|
|
34
|
+
value,
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true,
|
|
37
|
+
writable: true
|
|
38
|
+
});
|
|
39
|
+
} else {
|
|
40
|
+
obj[key] = value;
|
|
41
|
+
}
|
|
42
|
+
return obj;
|
|
43
|
+
}
|
|
44
|
+
function _get_prototype_of(o) {
|
|
45
|
+
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o2) {
|
|
46
|
+
return o2.__proto__ || Object.getPrototypeOf(o2);
|
|
47
|
+
};
|
|
48
|
+
return _get_prototype_of(o);
|
|
49
|
+
}
|
|
50
|
+
function _inherits(subClass, superClass) {
|
|
51
|
+
if (typeof superClass !== "function" && superClass !== null) {
|
|
52
|
+
throw new TypeError("Super expression must either be null or a function");
|
|
53
|
+
}
|
|
54
|
+
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
55
|
+
constructor: {
|
|
56
|
+
value: subClass,
|
|
57
|
+
writable: true,
|
|
58
|
+
configurable: true
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
if (superClass) _set_prototype_of(subClass, superClass);
|
|
62
|
+
}
|
|
63
|
+
function _is_native_function(fn) {
|
|
64
|
+
return Function.toString.call(fn).indexOf("[native code]") !== -1;
|
|
65
|
+
}
|
|
66
|
+
function _possible_constructor_return(self, call) {
|
|
67
|
+
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
68
|
+
return call;
|
|
69
|
+
}
|
|
70
|
+
return _assert_this_initialized(self);
|
|
71
|
+
}
|
|
72
|
+
function _set_prototype_of(o, p) {
|
|
73
|
+
_set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o2, p2) {
|
|
74
|
+
o2.__proto__ = p2;
|
|
75
|
+
return o2;
|
|
76
|
+
};
|
|
77
|
+
return _set_prototype_of(o, p);
|
|
78
|
+
}
|
|
1
79
|
function _type_of(obj) {
|
|
2
80
|
"@swc/helpers - typeof";
|
|
3
81
|
|
|
4
82
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
5
83
|
}
|
|
6
|
-
|
|
84
|
+
function _wrap_native_super(Class) {
|
|
85
|
+
var _cache = typeof Map === "function" ? /* @__PURE__ */new Map() : void 0;
|
|
86
|
+
_wrap_native_super = function wrapNativeSuper(Class2) {
|
|
87
|
+
if (Class2 === null || !_is_native_function(Class2)) return Class2;
|
|
88
|
+
if (typeof Class2 !== "function") {
|
|
89
|
+
throw new TypeError("Super expression must either be null or a function");
|
|
90
|
+
}
|
|
91
|
+
if (typeof _cache !== "undefined") {
|
|
92
|
+
if (_cache.has(Class2)) return _cache.get(Class2);
|
|
93
|
+
_cache.set(Class2, Wrapper);
|
|
94
|
+
}
|
|
95
|
+
function Wrapper() {
|
|
96
|
+
return _construct(Class2, arguments, _get_prototype_of(this).constructor);
|
|
97
|
+
}
|
|
98
|
+
Wrapper.prototype = Object.create(Class2.prototype, {
|
|
99
|
+
constructor: {
|
|
100
|
+
value: Wrapper,
|
|
101
|
+
enumerable: false,
|
|
102
|
+
writable: true,
|
|
103
|
+
configurable: true
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
return _set_prototype_of(Wrapper, Class2);
|
|
107
|
+
};
|
|
108
|
+
return _wrap_native_super(Class);
|
|
109
|
+
}
|
|
110
|
+
function _is_native_reflect_construct() {
|
|
111
|
+
try {
|
|
112
|
+
var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
|
|
113
|
+
} catch (_) {}
|
|
114
|
+
return (_is_native_reflect_construct = function () {
|
|
115
|
+
return !!result;
|
|
116
|
+
})();
|
|
117
|
+
}
|
|
118
|
+
var BRIDGE_PROTOCOL_VERSION = 1;
|
|
119
|
+
var NAMESPACES = ["evm", "solana", "sui", "gpg", "auth", "sys"];
|
|
7
120
|
var KINDS = ["req", "res", "event"];
|
|
121
|
+
var BridgeErrorCode = {
|
|
122
|
+
userRejected: 4001,
|
|
123
|
+
unsupportedMethod: 4200,
|
|
124
|
+
methodNotFound: -32601,
|
|
125
|
+
invalidParams: -32602,
|
|
126
|
+
internal: -32e3,
|
|
127
|
+
/** The page is not served over https (or loopback http), so it cannot sign in. */
|
|
128
|
+
pageNotHosted: -32001,
|
|
129
|
+
/** Keycloak refused the request; `data` carries `status`, `error`, `errorDescription`. */
|
|
130
|
+
keycloakRefused: -32002,
|
|
131
|
+
/** No wallet or signer for the requested family is available in the page. */
|
|
132
|
+
walletUnavailable: -32003,
|
|
133
|
+
/** The account has required actions left and no onboarding client was given. */
|
|
134
|
+
profileIncomplete: -32004
|
|
135
|
+
};
|
|
136
|
+
var BridgeRequestError = /* @__PURE__ */function (Error1) {
|
|
137
|
+
"use strict";
|
|
138
|
+
|
|
139
|
+
_inherits(BridgeRequestError2, Error1);
|
|
140
|
+
function BridgeRequestError2(code, message, data) {
|
|
141
|
+
_class_call_check(this, BridgeRequestError2);
|
|
142
|
+
var _this;
|
|
143
|
+
_this = _call_super(this, BridgeRequestError2, [message]), _define_property(_this, "code", void 0), _define_property(_this, "data", void 0);
|
|
144
|
+
_this.name = "BridgeRequestError";
|
|
145
|
+
_this.code = code;
|
|
146
|
+
if (data !== void 0) _this.data = data;
|
|
147
|
+
return _this;
|
|
148
|
+
}
|
|
149
|
+
return BridgeRequestError2;
|
|
150
|
+
}(_wrap_native_super(Error));
|
|
8
151
|
function isBridgeMessage(value) {
|
|
9
152
|
if ((typeof value === "undefined" ? "undefined" : _type_of(value)) !== "object" || value === null) return false;
|
|
10
153
|
var m = value;
|
|
@@ -21,5 +164,5 @@ function newRequestId() {
|
|
|
21
164
|
counter += 1;
|
|
22
165
|
return `${counter}-${Math.floor(((_ref = (_globalThis_performance = globalThis.performance) === null || _globalThis_performance === void 0 ? void 0 : (_globalThis_performance_now = _globalThis_performance.now) === null || _globalThis_performance_now === void 0 ? void 0 : _globalThis_performance_now.call(_globalThis_performance)) !== null && _ref !== void 0 ? _ref : counter) * 1e3)}`;
|
|
23
166
|
}
|
|
24
|
-
export { KINDS, NAMESPACES, isBridgeMessage, newRequestId };
|
|
167
|
+
export { BRIDGE_PROTOCOL_VERSION, BridgeErrorCode, BridgeRequestError, KINDS, NAMESPACES, isBridgeMessage, newRequestId };
|
|
25
168
|
//# sourceMappingURL=protocol.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable"],"sources":["../../../src/bridge/protocol.ts"],"sourcesContent":[null],"mappings":"AAIO,SAAMA,wBAA0BA,CAAAC,IAAA;EAEhC,IAAMA,IAAA,UAAc;IAGpB,MAAM,IAAQC,cAAQ,CAAO,2DAAO;EAIpC;EACL,OAAAD,IAAA;AAAc;AACK,SACnBE,WAAgBA,CAAAC,KAAA,EAAAC,OAAA,EAAAC,IAAA;EAChBD,OAAA,GAAAE,iBAAe,CAAAF,OAAA;EACf,OAAAG,4BAAU,CAAAJ,KAAA,EAAAK,4BAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,OAAA,EAAAC,IAAA,QAAAC,iBAAA,CAAAH,KAAA,EAAAQ,WAAA,IAAAP,OAAA,CAAAQ,KAAA,CAAAT,KAAA,EAAAE,IAAA;AAAA;AAAA,SAEVQ,iBAAeA,CAAAC,QAAA,EAAAC,WAAA;EAAA,MAAAD,QAAA,YAAAC,WAAA;IAEf,UAAAC,SAAiB;EAAA;AAAA;AAEE,SAAAC,WAAAC,MAAA,EAAAb,IAAA,EAAAc,KAAA;EAEnB,IAAAX,4BAAmB;IACrBS,UAAA,GAAAR,OAAA,CAAAC,SAAA;EA0BO,OAAM;IACFO,UAAA,YAAAP,UAAAU,OAAA,EAAAC,KAAA,EAAAC,MAAA;MACA,IAAAC,CAAA,IAET,KACE;MACAA,CAAA,CAAAC,IAAK,CAAAZ,KAAO,CAAAW,CAAA,EAAAF,KAAA;MACZ,IAAKN,WAAO,GAAAU,QAAA,CAAAC,IAAA,CAAAd,KAAA,CAAAQ,OAAA,EAAAG,CAAA;MACZ,IAAIT,QAAS,OAAWC,WAAK,CAAO;MACtC,IAAAO,MAAA,EAAAK,iBAAA,CAAAb,QAAA,EAAAQ,MAAA,CAAAM,SAAA;MACF,OAAAd,QAAA;IAEO;EACL;EACA,OAAMG,UAAI,CAAAL,KAAA,OAAAiB,SAAA;AACV;AACA,SAAKC,gBAAiBA,CAAAC,GAAY,EAAGC,GAAA,EAAAC,KAAO;EAC5C,IAAID,GAAE,IAAAD,GAAO;IACbG,MAAM,CAAAC,cAAW,CAAAJ,GAAa,EAAAC,GAAA,EAAO;MACrCC,KAAO;MACTG,UAAA;MAEIC,YAAU;MACPC,QAAS;IAEd;EACA,OAAO;IACTP,GAAA,CAAAC,GAAA,IAAAC,KAAA","ignoreList":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { createMessageRegistry } from "./message.mjs";
|
|
2
|
+
import { assertName, nameTable } from "./names.mjs";
|
|
3
|
+
function defineWalletFamily(definition) {
|
|
4
|
+
assertName("wallet family id", definition.id);
|
|
5
|
+
const aliases = [...(definition.aliases ?? [])];
|
|
6
|
+
for (const alias of aliases) {
|
|
7
|
+
assertName(`wallet family ${definition.id} alias`, alias);
|
|
8
|
+
if (alias === definition.id) {
|
|
9
|
+
throw new Error(`wallet family ${definition.id} lists its own id as an alias`);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
if (typeof definition.label !== "string" || !definition.label.trim()) {
|
|
13
|
+
throw new Error(`wallet family ${definition.id} needs a label`);
|
|
14
|
+
}
|
|
15
|
+
const {
|
|
16
|
+
message
|
|
17
|
+
} = definition;
|
|
18
|
+
if (!message || typeof message.header !== "string" || !message.header) {
|
|
19
|
+
throw new Error(`wallet family ${definition.id} needs a message spec with a header`);
|
|
20
|
+
}
|
|
21
|
+
const connectionless = definition.connectionless === true;
|
|
22
|
+
if (connectionless && definition.driver) {
|
|
23
|
+
throw new Error(`wallet family ${definition.id} is connectionless and cannot have a driver`);
|
|
24
|
+
}
|
|
25
|
+
if (!connectionless && typeof definition.driver !== "function") {
|
|
26
|
+
throw new Error(`wallet family ${definition.id} needs a driver, or connectionless: true`);
|
|
27
|
+
}
|
|
28
|
+
return Object.freeze({
|
|
29
|
+
...definition,
|
|
30
|
+
aliases: Object.freeze(aliases),
|
|
31
|
+
connectionless,
|
|
32
|
+
message: Object.freeze({
|
|
33
|
+
...message
|
|
34
|
+
}),
|
|
35
|
+
...(definition.screens ? {
|
|
36
|
+
screens: Object.freeze([...definition.screens])
|
|
37
|
+
} : {})
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function createFamilyRegistry(families) {
|
|
41
|
+
const list = Object.freeze([...families]);
|
|
42
|
+
const names = nameTable(list);
|
|
43
|
+
const byId = new Map(list.map(family => [family.id, family]));
|
|
44
|
+
const get = family => {
|
|
45
|
+
const id = names.get(family);
|
|
46
|
+
return id === void 0 ? void 0 : byId.get(id);
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
families: list,
|
|
50
|
+
get,
|
|
51
|
+
require(family) {
|
|
52
|
+
const found = get(family);
|
|
53
|
+
if (found === void 0) {
|
|
54
|
+
throw new Error(`wallet family ${family} is not registered; registered: ${list.map(entry => entry.id).join(", ") || "none"}`);
|
|
55
|
+
}
|
|
56
|
+
return found;
|
|
57
|
+
},
|
|
58
|
+
messages: createMessageRegistry(list)
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
export { createFamilyRegistry, defineWalletFamily };
|
|
62
|
+
//# sourceMappingURL=family.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createMessageRegistry","assertName","nameTable","defineWalletFamily","definition","id","aliases","alias","Error","label","trim","message","header","connectionless","driver","Object","freeze","screens","createFamilyRegistry","families","list","names","byId","Map","map","family","get","require","found","entry","join","messages"],"sources":["../../../src/core/family.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { createMessageRegistry } from "./message.native.js";
|
|
2
|
+
import { assertName, nameTable } from "./names.native.js";
|
|
3
|
+
function defineWalletFamily(definition) {
|
|
4
|
+
var _definition_aliases;
|
|
5
|
+
assertName("wallet family id", definition.id);
|
|
6
|
+
var aliases = [...((_definition_aliases = definition.aliases) !== null && _definition_aliases !== void 0 ? _definition_aliases : [])];
|
|
7
|
+
var _iteratorNormalCompletion = true,
|
|
8
|
+
_didIteratorError = false,
|
|
9
|
+
_iteratorError = void 0;
|
|
10
|
+
try {
|
|
11
|
+
for (var _iterator = aliases[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
12
|
+
var alias = _step.value;
|
|
13
|
+
assertName(`wallet family ${definition.id} alias`, alias);
|
|
14
|
+
if (alias === definition.id) {
|
|
15
|
+
throw new Error(`wallet family ${definition.id} lists its own id as an alias`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
} catch (err) {
|
|
19
|
+
_didIteratorError = true;
|
|
20
|
+
_iteratorError = err;
|
|
21
|
+
} finally {
|
|
22
|
+
try {
|
|
23
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
24
|
+
_iterator.return();
|
|
25
|
+
}
|
|
26
|
+
} finally {
|
|
27
|
+
if (_didIteratorError) {
|
|
28
|
+
throw _iteratorError;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (typeof definition.label !== "string" || !definition.label.trim()) {
|
|
33
|
+
throw new Error(`wallet family ${definition.id} needs a label`);
|
|
34
|
+
}
|
|
35
|
+
var {
|
|
36
|
+
message
|
|
37
|
+
} = definition;
|
|
38
|
+
if (!message || typeof message.header !== "string" || !message.header) {
|
|
39
|
+
throw new Error(`wallet family ${definition.id} needs a message spec with a header`);
|
|
40
|
+
}
|
|
41
|
+
var connectionless = definition.connectionless === true;
|
|
42
|
+
if (connectionless && definition.driver) {
|
|
43
|
+
throw new Error(`wallet family ${definition.id} is connectionless and cannot have a driver`);
|
|
44
|
+
}
|
|
45
|
+
if (!connectionless && typeof definition.driver !== "function") {
|
|
46
|
+
throw new Error(`wallet family ${definition.id} needs a driver, or connectionless: true`);
|
|
47
|
+
}
|
|
48
|
+
return Object.freeze({
|
|
49
|
+
...definition,
|
|
50
|
+
aliases: Object.freeze(aliases),
|
|
51
|
+
connectionless,
|
|
52
|
+
message: Object.freeze({
|
|
53
|
+
...message
|
|
54
|
+
}),
|
|
55
|
+
...(definition.screens ? {
|
|
56
|
+
screens: Object.freeze([...definition.screens])
|
|
57
|
+
} : {})
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
function createFamilyRegistry(families) {
|
|
61
|
+
var list = Object.freeze([...families]);
|
|
62
|
+
var names = nameTable(list);
|
|
63
|
+
var byId = new Map(list.map(function (family) {
|
|
64
|
+
return [family.id, family];
|
|
65
|
+
}));
|
|
66
|
+
var get = function get2(family) {
|
|
67
|
+
var id = names.get(family);
|
|
68
|
+
return id === void 0 ? void 0 : byId.get(id);
|
|
69
|
+
};
|
|
70
|
+
return {
|
|
71
|
+
families: list,
|
|
72
|
+
get,
|
|
73
|
+
require(family) {
|
|
74
|
+
var found = get(family);
|
|
75
|
+
if (found === void 0) {
|
|
76
|
+
throw new Error(`wallet family ${family} is not registered; registered: ${list.map(function (entry) {
|
|
77
|
+
return entry.id;
|
|
78
|
+
}).join(", ") || "none"}`);
|
|
79
|
+
}
|
|
80
|
+
return found;
|
|
81
|
+
},
|
|
82
|
+
messages: createMessageRegistry(list)
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
export { createFamilyRegistry, defineWalletFamily };
|
|
86
|
+
//# sourceMappingURL=family.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createMessageRegistry","assertName","nameTable","defineWalletFamily","definition","_definition_aliases","id","aliases","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","alias","value","Error","err","return","label","trim","message","header","connectionless","driver","Object","freeze","screens"],"sources":["../../../src/core/family.ts"],"sourcesContent":[null],"mappings":"AAEA,SAAAA,qBAAA;AAAA,SACEC,UAAA,EAAAC,SAAA;AAAA,SAGKC,mBAAAC,UAAA;EACP,IAAAC,mBAAqB;EA8BdJ,UAAS,mBAAmB,EAAAG,UAAkD,CAAAE,EAAA;EACnF,IAAAC,OAAW,IACX,KAAMF,mBAAe,GAAAD,UAAW,CAAAG,OAAc,cAAAF,mBAAA,cAAAA,mBAAA,OAC9C;EACE,IAAAG,yBAAW,GAAiB;IAAAC,iBAAuB,GAAK;IAAAC,cAAA;EACxD;IACE,SAAMC,SAAU,GAAAJ,OAAA,CAAAK,MAAiB,CAAAC,QAAA,EAAW,GAAEC,KAAA,IAAAN,yBAA+B,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MAC/E,IAAAS,KAAA,GAAAH,KAAA,CAAAI,KAAA;MACFjB,UAAA,kBAAAG,UAAA,CAAAE,EAAA,UAAAW,KAAA;MACI,IAAAA,KAAO,KAAAb,UAAW,CAAAE,EAAA,EAAU;QAC9B,MAAU,IAAAa,KAAM,kBAAiBf,UAAa,CAAAE,EAAA,+BAAgB;MAChE;IACA;EACA,SAAKc,GAAA;IACHX,iBAAgB;IAClBC,cAAA,GAAAU,GAAA;EACA,UAAM;IACN,IAAI;MACF,IAAM,CAAAZ,yBAAU,IAAiBG,SAAW,CAAEU,MAAA;QAChDV,SAAA,CAAAU,MAAA;MACI;IACF,UAAU;MACZ,IAAAZ,iBAAA;QACA,MAAOC,cAAc;MACnB;IACA;EAA8B;EAC9B,IACA,OAASN,UAAO,CAAAkB,KAAS,KAAG,QAAS,KAAAlB,UAAA,CAAAkB,KAAA,CAAAC,IAAA;IACrC,MAAI,IAAAJ,KAAW,kBAAYf,UAAgB,CAAAE,EAAA,gBAAW;EACxD;EACF;IAAAkB;EAAA,IAAApB,UAAA;EAaO,KAAAoB,OAAS,WAAAA,OAAqB,CAAAC,MAAA,KAAmD,aAAAD,OAAA,CAAAC,MAAA;IACtF,MAAM,IAAAN,KAAO,kBAAkBf,UAAS,CAAAE,EAAA;EACxC;EACA,IAAAoB,cAAiB,GAAItB,UAAU,CAAAsB,cAAY,KAAO,IAAI;EACtD,IAAAA,cAAa,IAAAtB,UAAmB,CAAAuB,MAAA;IAC9B,MAAM,IAAAR,KAAK,kBAAgBf,UAAA,CAAAE,EAAA;EAC3B;EACF,KAAAoB,cAAA,WAAAtB,UAAA,CAAAuB,MAAA;IACA,MAAO,IAAAR,KAAA,kBAAAf,UAAA,CAAAE,EAAA;EAAA;EACK,OACVsB,MAAA,CAAAC,MAAA;IACA,GAAAzB,UAAQ;IACNG,OAAA,EAAMqB,MAAA,CAAQC,MAAI,CAAAtB,OAAM;IACxBmB,cAAI;IACFF,OAAA,EAAAI,MAAU,CAAAC,MAAA;MAAA,GAAAL;IACoG;IAC9G,IACFpB,UAAA,CAAA0B,OAAA;MACAA,OAAO,EAAAF,MAAA,CAAAC,MAAA,EACT,GAAAzB,UAAA,CAAA0B,OAAA,CACA;IACF;EACF","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createFamilyRegistry, defineWalletFamily } from "./family.mjs";
|
|
2
|
+
import { createMessageRegistry, formatWalletMessage } from "./message.mjs";
|
|
3
|
+
import { createConnectionStore, defaultConnectionStorageKey } from "./store.mjs";
|
|
4
|
+
import { ConnectionProvider, useConnection, useConnectionStore } from "./react.mjs";
|
|
5
|
+
import { UnsupportedClientMethodError } from "../clients/types.mjs";
|
|
6
|
+
export { ConnectionProvider, UnsupportedClientMethodError, createConnectionStore, createFamilyRegistry, createMessageRegistry, defaultConnectionStorageKey, defineWalletFamily, formatWalletMessage, useConnection, useConnectionStore };
|
|
7
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createFamilyRegistry","defineWalletFamily","createMessageRegistry","formatWalletMessage","createConnectionStore","defaultConnectionStorageKey","ConnectionProvider","useConnection","useConnectionStore","UnsupportedClientMethodError"],"sources":["../../../src/core/index.ts"],"sourcesContent":[null],"mappings":"AAGA,SACEA,oBAAA,EACAC,kBAAA,QAIK;AACP,SACEC,qBAAA,EACAC,mBAAA,QAIK;AACP,SACEC,qBAAA,EACAC,2BAAA,QAIK;AACP,SACEC,kBAAA,EACAC,aAAA,EACAC,kBAAA,QAEK;AAYP,SACEC,4BAAA,QAIK","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createFamilyRegistry, defineWalletFamily } from "./family.native.js";
|
|
2
|
+
import { createMessageRegistry, formatWalletMessage } from "./message.native.js";
|
|
3
|
+
import { createConnectionStore, defaultConnectionStorageKey } from "./store.native.js";
|
|
4
|
+
import { ConnectionProvider, useConnection, useConnectionStore } from "./react.native.js";
|
|
5
|
+
import { UnsupportedClientMethodError } from "../clients/types.native.js";
|
|
6
|
+
export { ConnectionProvider, UnsupportedClientMethodError, createConnectionStore, createFamilyRegistry, createMessageRegistry, defaultConnectionStorageKey, defineWalletFamily, formatWalletMessage, useConnection, useConnectionStore };
|
|
7
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createFamilyRegistry","defineWalletFamily","createMessageRegistry","formatWalletMessage","createConnectionStore","defaultConnectionStorageKey","ConnectionProvider","useConnection","useConnectionStore","UnsupportedClientMethodError"],"sources":["../../../src/core/index.ts"],"sourcesContent":[null],"mappings":"AAGA,SAAAA,oBAAA,EAAAC,kBAAA;AAAA,SACEC,qBAAA,EAAAC,mBAAA;AAAA,SACAC,qBAAA,EAAAC,2BAAA;AAAA,SAIKC,kBAAA,EAAAC,aAAA,EAAAC,kBAAA;AACP,SAAAC,4BAAA;AAAA,SAEEH,kBAAA,EAAAG,4BAIK,EACPL,qBAAA,EACEJ,oBAAA,EACAE,qBAAA,EAAAG,2BAIK,EACPJ,kBAAA,EACEE,mBAAA,EACAI,aAAA,EACAC,kBAAA","ignoreList":[]}
|