@novastera-oss/nitro-metamask 0.3.3 → 0.4.2
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 +73 -12
- package/android/src/main/java/com/margelo/nitro/nitrometamask/HybridNitroMetamask.kt +349 -175
- package/app.plugin.js +121 -0
- package/ios/HybridNitroMetamask.swift +71 -110
- package/lib/typescript/src/specs/nitro-metamask.nitro.d.ts +31 -6
- package/lib/typescript/src/specs/nitro-metamask.nitro.d.ts.map +1 -1
- package/nitrogen/generated/android/NitroMetamask+autolinking.cmake +2 -0
- package/nitrogen/generated/android/c++/JConnectResult.hpp +3 -3
- package/nitrogen/generated/android/c++/JConnectSignResult.hpp +65 -0
- package/nitrogen/generated/android/c++/JHybridNitroMetamaskSpec.cpp +48 -7
- package/nitrogen/generated/android/c++/JHybridNitroMetamaskSpec.hpp +4 -2
- package/nitrogen/generated/android/c++/JVariant_NullType_Long.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Long.hpp +69 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_String.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrometamask/ConnectResult.kt +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrometamask/ConnectSignResult.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrometamask/HybridNitroMetamaskSpec.kt +11 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrometamask/Variant_NullType_Long.kt +59 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrometamask/Variant_NullType_String.kt +59 -0
- package/nitrogen/generated/ios/NitroMetamask-Swift-Cxx-Bridge.cpp +24 -0
- package/nitrogen/generated/ios/NitroMetamask-Swift-Cxx-Bridge.hpp +192 -0
- package/nitrogen/generated/ios/NitroMetamask-Swift-Cxx-Umbrella.hpp +5 -0
- package/nitrogen/generated/ios/c++/HybridNitroMetamaskSpecSwift.hpp +24 -3
- package/nitrogen/generated/ios/swift/ConnectResult.swift +2 -2
- package/nitrogen/generated/ios/swift/ConnectSignResult.swift +40 -0
- package/nitrogen/generated/ios/swift/Func_void_ConnectSignResult.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__int64_t_.swift +59 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_nitro__NullType__std__string_.swift +59 -0
- package/nitrogen/generated/ios/swift/HybridNitroMetamaskSpec.swift +4 -2
- package/nitrogen/generated/ios/swift/HybridNitroMetamaskSpec_cxx.swift +67 -8
- package/nitrogen/generated/ios/swift/Variant_NullType_Int64.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +18 -0
- package/nitrogen/generated/shared/c++/ConnectResult.hpp +5 -5
- package/nitrogen/generated/shared/c++/ConnectSignResult.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridNitroMetamaskSpec.cpp +2 -0
- package/nitrogen/generated/shared/c++/HybridNitroMetamaskSpec.hpp +9 -2
- package/package.json +18 -4
- package/src/specs/nitro-metamask.nitro.ts +32 -6
|
@@ -2,20 +2,46 @@ import { type HybridObject } from 'react-native-nitro-modules'
|
|
|
2
2
|
|
|
3
3
|
export interface ConnectResult {
|
|
4
4
|
address: string
|
|
5
|
-
chainId:
|
|
5
|
+
chainId: bigint
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface ConnectSignResult {
|
|
9
|
+
signature: string
|
|
10
|
+
address: string
|
|
11
|
+
chainId: bigint
|
|
6
12
|
}
|
|
7
13
|
|
|
8
14
|
export interface NitroMetamask extends HybridObject<{ ios: 'swift', android: 'kotlin' }> {
|
|
9
15
|
/**
|
|
10
|
-
* Configure the dapp URL for MetaMask SDK
|
|
11
|
-
* This URL is only used for SDK validation - the deep link return is handled automatically via AndroidManifest.xml.
|
|
16
|
+
* Configure the dapp URL and deep link scheme for MetaMask SDK.
|
|
12
17
|
*
|
|
13
18
|
* @param dappUrl - A valid HTTP/HTTPS URL (e.g., "https://yourdomain.com").
|
|
14
19
|
* If not provided, defaults to "https://novastera.com".
|
|
15
|
-
* This is
|
|
20
|
+
* This is used for SDK validation.
|
|
21
|
+
* @param deepLinkScheme - The deep link scheme from your AndroidManifest.xml (e.g., "nitrometamask").
|
|
22
|
+
* If not provided, the library will attempt to auto-detect it.
|
|
23
|
+
* This is used to return to your app after MetaMask operations.
|
|
16
24
|
*/
|
|
17
|
-
configure(dappUrl?: string): void
|
|
25
|
+
configure(dappUrl?: string, deepLinkScheme?: string): void
|
|
18
26
|
connect(): Promise<ConnectResult>
|
|
19
27
|
signMessage(message: string): Promise<string>
|
|
20
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Connect to MetaMask (if not already connected) and sign a message containing nonce and expiration.
|
|
30
|
+
* Returns the signature along with the address and chainId that were used to sign.
|
|
31
|
+
*
|
|
32
|
+
* @param nonce - A unique nonce for this signing request
|
|
33
|
+
* @param exp - Expiration timestamp (as bigint)
|
|
34
|
+
* @returns Promise resolving to ConnectSignResult containing signature, address, and chainId
|
|
35
|
+
*/
|
|
36
|
+
connectSign(nonce: string, exp: bigint): Promise<ConnectSignResult>
|
|
37
|
+
/**
|
|
38
|
+
* Get the currently connected wallet address.
|
|
39
|
+
* Returns null if not connected.
|
|
40
|
+
*/
|
|
41
|
+
getAddress(): Promise<string | null>
|
|
42
|
+
/**
|
|
43
|
+
* Get the current chain ID.
|
|
44
|
+
* Returns null if not connected.
|
|
45
|
+
*/
|
|
46
|
+
getChainId(): Promise<bigint | null>
|
|
21
47
|
}
|