@demox-labs/aleo-wallet-adapter-leo
Advanced tools
Comparing version 0.0.10 to 0.0.11
@@ -16,4 +16,7 @@ import { | ||
WalletDecryptionError, | ||
WalletRecordsError, | ||
DecryptPermission, | ||
WalletAdapterNetwork, | ||
AleoTransaction, | ||
WalletTransactionError, | ||
} from '@demox-labs/aleo-wallet-adapter-base'; | ||
@@ -29,11 +32,7 @@ | ||
viewKey?: string; | ||
signTransaction(transaction: any): Promise<any>; | ||
signAllTransactions(transactions: any[]): Promise<any[]>; | ||
signAndSendTransaction( | ||
transaction: any, | ||
options?: any | ||
): Promise<{ signature: any }>; | ||
signMessage(message: Uint8Array): Promise<{ signature: Uint8Array }>; | ||
requestViewKey(): Promise<{ viewKey: string }>; | ||
decrypt(cipherText: string): Promise<{ text: string }>, | ||
decrypt(cipherText: string): Promise<{ text: string }>, | ||
requestRecords(program: string): Promise<{ records: any[] }>, | ||
requestTransaction(transaction: AleoTransaction): Promise<{ transactionId?: string}>, | ||
connect(decryptPermission: DecryptPermission, network: WalletAdapterNetwork): Promise<void>; | ||
@@ -144,2 +143,35 @@ disconnect(): Promise<void>; | ||
async requestRecords(program: string): Promise<any[]> { | ||
try { | ||
const wallet = this._wallet; | ||
if (!wallet || !this.publicKey) throw new WalletNotConnectedError(); | ||
try { | ||
const result = await wallet.requestRecords(program); | ||
return result.records; | ||
} catch (error: any) { | ||
throw new WalletRecordsError(error?.message, error); | ||
} | ||
} catch (error: any) { | ||
this.emit('error', error); | ||
throw error; | ||
} | ||
} | ||
async requestTransaction(transaction: AleoTransaction): Promise<string> { | ||
try { | ||
const wallet = this._wallet; | ||
if (!wallet || !this.publicKey) throw new WalletNotConnectedError(); | ||
try { | ||
const result = await wallet.requestTransaction(transaction); | ||
return result.transactionId; | ||
} catch (error: any) { | ||
throw new WalletTransactionError(error?.message, error); | ||
} | ||
} catch (error: any) { | ||
this.emit('error', error); | ||
throw error; | ||
} | ||
} | ||
async connect(decryptPermission: DecryptPermission, network: WalletAdapterNetwork): Promise<void> { | ||
@@ -146,0 +178,0 @@ try { |
@@ -1,2 +0,2 @@ | ||
import { BaseMessageSignerWalletAdapter, EventEmitter, WalletName, WalletReadyState, DecryptPermission, WalletAdapterNetwork } from '@demox-labs/aleo-wallet-adapter-base'; | ||
import { BaseMessageSignerWalletAdapter, EventEmitter, WalletName, WalletReadyState, DecryptPermission, WalletAdapterNetwork, AleoTransaction } from '@demox-labs/aleo-wallet-adapter-base'; | ||
export interface LeoWalletEvents { | ||
@@ -9,7 +9,2 @@ connect(...args: unknown[]): unknown; | ||
viewKey?: string; | ||
signTransaction(transaction: any): Promise<any>; | ||
signAllTransactions(transactions: any[]): Promise<any[]>; | ||
signAndSendTransaction(transaction: any, options?: any): Promise<{ | ||
signature: any; | ||
}>; | ||
signMessage(message: Uint8Array): Promise<{ | ||
@@ -24,2 +19,8 @@ signature: Uint8Array; | ||
}>; | ||
requestRecords(program: string): Promise<{ | ||
records: any[]; | ||
}>; | ||
requestTransaction(transaction: AleoTransaction): Promise<{ | ||
transactionId?: string; | ||
}>; | ||
connect(decryptPermission: DecryptPermission, network: WalletAdapterNetwork): Promise<void>; | ||
@@ -54,2 +55,4 @@ disconnect(): Promise<void>; | ||
decrypt(cipherText: string): Promise<string>; | ||
requestRecords(program: string): Promise<any[]>; | ||
requestTransaction(transaction: AleoTransaction): Promise<string>; | ||
connect(decryptPermission: DecryptPermission, network: WalletAdapterNetwork): Promise<void>; | ||
@@ -56,0 +59,0 @@ disconnect(): Promise<void>; |
@@ -1,2 +0,2 @@ | ||
import { BaseMessageSignerWalletAdapter, scopePollingDetectionStrategy, WalletConnectionError, WalletRequestViewKeyError, WalletDisconnectionError, WalletNotConnectedError, WalletNotReadyError, WalletReadyState, WalletSignTransactionError, WalletDecryptionNotAllowedError, WalletDecryptionError, DecryptPermission, } from '@demox-labs/aleo-wallet-adapter-base'; | ||
import { BaseMessageSignerWalletAdapter, scopePollingDetectionStrategy, WalletConnectionError, WalletRequestViewKeyError, WalletDisconnectionError, WalletNotConnectedError, WalletNotReadyError, WalletReadyState, WalletSignTransactionError, WalletDecryptionNotAllowedError, WalletDecryptionError, WalletRecordsError, DecryptPermission, WalletTransactionError, } from '@demox-labs/aleo-wallet-adapter-base'; | ||
export const LeoWalletName = 'Leo Wallet'; | ||
@@ -81,2 +81,38 @@ export class LeoWalletAdapter extends BaseMessageSignerWalletAdapter { | ||
} | ||
async requestRecords(program) { | ||
try { | ||
const wallet = this._wallet; | ||
if (!wallet || !this.publicKey) | ||
throw new WalletNotConnectedError(); | ||
try { | ||
const result = await wallet.requestRecords(program); | ||
return result.records; | ||
} | ||
catch (error) { | ||
throw new WalletRecordsError(error?.message, error); | ||
} | ||
} | ||
catch (error) { | ||
this.emit('error', error); | ||
throw error; | ||
} | ||
} | ||
async requestTransaction(transaction) { | ||
try { | ||
const wallet = this._wallet; | ||
if (!wallet || !this.publicKey) | ||
throw new WalletNotConnectedError(); | ||
try { | ||
const result = await wallet.requestTransaction(transaction); | ||
return result.transactionId; | ||
} | ||
catch (error) { | ||
throw new WalletTransactionError(error?.message, error); | ||
} | ||
} | ||
catch (error) { | ||
this.emit('error', error); | ||
throw error; | ||
} | ||
} | ||
async connect(decryptPermission, network) { | ||
@@ -83,0 +119,0 @@ try { |
@@ -1,1 +0,1 @@ | ||
export * from './adapter.js'; | ||
export * from './adapter'; |
@@ -1,2 +0,2 @@ | ||
export * from './adapter.js'; | ||
export * from './adapter'; | ||
//# sourceMappingURL=index.js.map |
@@ -55,6 +55,6 @@ [@demox-labs/aleo-wallet-adapter-leo](../README.md) / [Exports](../modules.md) / LeoWalletAdapter | ||
- [removeListener](LeoWalletAdapter.md#removelistener) | ||
- [requestRecords](LeoWalletAdapter.md#requestrecords) | ||
- [requestTransaction](LeoWalletAdapter.md#requesttransaction) | ||
- [requestViewKey](LeoWalletAdapter.md#requestviewkey) | ||
- [signAllTransactions](LeoWalletAdapter.md#signalltransactions) | ||
- [signMessage](LeoWalletAdapter.md#signmessage) | ||
- [signTransaction](LeoWalletAdapter.md#signtransaction) | ||
@@ -79,3 +79,3 @@ ## Constructors | ||
[adapter.ts:70](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L70) | ||
[adapter.ts:69](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L69) | ||
@@ -90,3 +90,3 @@ ## Properties | ||
[adapter.ts:60](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L60) | ||
[adapter.ts:59](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L59) | ||
@@ -101,3 +101,3 @@ ___ | ||
[adapter.ts:63](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L63) | ||
[adapter.ts:62](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L62) | ||
@@ -112,3 +112,3 @@ ___ | ||
[adapter.ts:62](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L62) | ||
[adapter.ts:61](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L61) | ||
@@ -123,3 +123,3 @@ ___ | ||
[adapter.ts:65](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L65) | ||
[adapter.ts:64](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L64) | ||
@@ -134,3 +134,3 @@ ___ | ||
[adapter.ts:64](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L64) | ||
[adapter.ts:63](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L63) | ||
@@ -145,3 +145,3 @@ ___ | ||
[adapter.ts:61](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L61) | ||
[adapter.ts:60](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L60) | ||
@@ -160,3 +160,3 @@ ___ | ||
[adapter.ts:56](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L56) | ||
[adapter.ts:55](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L55) | ||
@@ -175,3 +175,3 @@ ___ | ||
[adapter.ts:54](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L54) | ||
[adapter.ts:53](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L53) | ||
@@ -190,3 +190,3 @@ ___ | ||
[adapter.ts:58](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L58) | ||
[adapter.ts:57](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L57) | ||
@@ -205,3 +205,3 @@ ___ | ||
[adapter.ts:55](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L55) | ||
[adapter.ts:54](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L54) | ||
@@ -256,3 +256,3 @@ ___ | ||
[adapter.ts:102](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L102) | ||
[adapter.ts:101](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L101) | ||
@@ -271,3 +271,3 @@ ___ | ||
[adapter.ts:98](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L98) | ||
[adapter.ts:97](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L97) | ||
@@ -290,3 +290,3 @@ ___ | ||
[adapter.ts:90](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L90) | ||
[adapter.ts:89](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L89) | ||
@@ -309,3 +309,3 @@ ___ | ||
[adapter.ts:106](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L106) | ||
[adapter.ts:105](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L105) | ||
@@ -330,3 +330,3 @@ • `set` **readyState**(`readyState`): `void` | ||
[adapter.ts:110](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L110) | ||
[adapter.ts:109](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L109) | ||
@@ -349,3 +349,3 @@ ___ | ||
[adapter.ts:94](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L94) | ||
[adapter.ts:93](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L93) | ||
@@ -395,3 +395,3 @@ ## Methods | ||
| `decryptPermission` | `DecryptPermission` | | ||
| `network` | `WalletAdapterNetwork` | | ||
| `network` | `Testnet` | | ||
@@ -408,3 +408,3 @@ #### Returns | ||
[adapter.ts:142](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L142) | ||
[adapter.ts:174](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L174) | ||
@@ -433,3 +433,3 @@ ___ | ||
[adapter.ts:114](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L114) | ||
[adapter.ts:113](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L113) | ||
@@ -452,3 +452,3 @@ ___ | ||
[adapter.ts:175](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L175) | ||
[adapter.ts:207](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L207) | ||
@@ -731,30 +731,30 @@ ___ | ||
### requestViewKey | ||
### requestRecords | ||
▸ **requestViewKey**(): `Promise`<`string`\> | ||
▸ **requestRecords**(`program`): `Promise`<`any`[]\> | ||
#### Parameters | ||
| Name | Type | | ||
| :------ | :------ | | ||
| `program` | `string` | | ||
#### Returns | ||
`Promise`<`string`\> | ||
`Promise`<`any`[]\> | ||
#### Overrides | ||
BaseMessageSignerWalletAdapter.requestViewKey | ||
BaseMessageSignerWalletAdapter.requestRecords | ||
#### Defined in | ||
[adapter.ts:210](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L210) | ||
[adapter.ts:141](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L141) | ||
___ | ||
### signAllTransactions | ||
### requestTransaction | ||
▸ **signAllTransactions**<`T`\>(`transactions`): `Promise`<`T`[]\> | ||
▸ **requestTransaction**(`transaction`): `Promise`<`string`\> | ||
#### Type parameters | ||
| Name | Type | | ||
| :------ | :------ | | ||
| `T` | extends `any` | | ||
#### Parameters | ||
@@ -764,52 +764,40 @@ | ||
| :------ | :------ | | ||
| `transactions` | `T`[] | | ||
| `transaction` | `AleoTransaction` | | ||
#### Returns | ||
`Promise`<`T`[]\> | ||
`Promise`<`string`\> | ||
#### Inherited from | ||
#### Overrides | ||
BaseMessageSignerWalletAdapter.signAllTransactions | ||
BaseMessageSignerWalletAdapter.requestTransaction | ||
#### Defined in | ||
node_modules/@demox-labs/aleo-wallet-adapter-base/dist/signer.d.ts:12 | ||
[adapter.ts:158](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L158) | ||
___ | ||
### signMessage | ||
### requestViewKey | ||
▸ **signMessage**(`message`): `Promise`<`Uint8Array`\> | ||
▸ **requestViewKey**(): `Promise`<`string`\> | ||
#### Parameters | ||
| Name | Type | | ||
| :------ | :------ | | ||
| `message` | `Uint8Array` | | ||
#### Returns | ||
`Promise`<`Uint8Array`\> | ||
`Promise`<`string`\> | ||
#### Overrides | ||
BaseMessageSignerWalletAdapter.signMessage | ||
BaseMessageSignerWalletAdapter.requestViewKey | ||
#### Defined in | ||
[adapter.ts:193](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L193) | ||
[adapter.ts:242](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L242) | ||
___ | ||
### signTransaction | ||
### signMessage | ||
▸ **signTransaction**<`T`\>(`transaction`): `Promise`<`T`\> | ||
▸ **signMessage**(`message`): `Promise`<`Uint8Array`\> | ||
#### Type parameters | ||
| Name | Type | | ||
| :------ | :------ | | ||
| `T` | extends `any` | | ||
#### Parameters | ||
@@ -819,14 +807,14 @@ | ||
| :------ | :------ | | ||
| `transaction` | `T` | | ||
| `message` | `Uint8Array` | | ||
#### Returns | ||
`Promise`<`T`\> | ||
`Promise`<`Uint8Array`\> | ||
#### Inherited from | ||
#### Overrides | ||
BaseMessageSignerWalletAdapter.signTransaction | ||
BaseMessageSignerWalletAdapter.signMessage | ||
#### Defined in | ||
node_modules/@demox-labs/aleo-wallet-adapter-base/dist/signer.d.ts:11 | ||
[adapter.ts:225](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L225) |
@@ -33,7 +33,6 @@ [@demox-labs/aleo-wallet-adapter-leo](../README.md) / [Exports](../modules.md) / LeoWallet | ||
- [removeListener](LeoWallet.md#removelistener) | ||
- [requestRecords](LeoWallet.md#requestrecords) | ||
- [requestTransaction](LeoWallet.md#requesttransaction) | ||
- [requestViewKey](LeoWallet.md#requestviewkey) | ||
- [signAllTransactions](LeoWallet.md#signalltransactions) | ||
- [signAndSendTransaction](LeoWallet.md#signandsendtransaction) | ||
- [signMessage](LeoWallet.md#signmessage) | ||
- [signTransaction](LeoWallet.md#signtransaction) | ||
@@ -48,3 +47,3 @@ ## Properties | ||
[adapter.ts:26](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L26) | ||
[adapter.ts:29](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L29) | ||
@@ -59,3 +58,3 @@ ___ | ||
[adapter.ts:27](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L27) | ||
[adapter.ts:30](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L30) | ||
@@ -105,3 +104,3 @@ ## Methods | ||
| `decryptPermission` | `DecryptPermission` | | ||
| `network` | `WalletAdapterNetwork` | | ||
| `network` | `Testnet` | | ||
@@ -114,3 +113,3 @@ #### Returns | ||
[adapter.ts:37](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L37) | ||
[adapter.ts:36](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L36) | ||
@@ -135,3 +134,3 @@ ___ | ||
[adapter.ts:36](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L36) | ||
[adapter.ts:33](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L33) | ||
@@ -150,3 +149,3 @@ ___ | ||
[adapter.ts:38](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L38) | ||
[adapter.ts:37](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L37) | ||
@@ -429,20 +428,6 @@ ___ | ||
### requestViewKey | ||
### requestRecords | ||
▸ **requestViewKey**(): `Promise`<{ `viewKey`: `string` }\> | ||
▸ **requestRecords**(`program`): `Promise`<{ `records`: `any`[] }\> | ||
#### Returns | ||
`Promise`<{ `viewKey`: `string` }\> | ||
#### Defined in | ||
[adapter.ts:35](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L35) | ||
___ | ||
### signAllTransactions | ||
▸ **signAllTransactions**(`transactions`): `Promise`<`any`[]\> | ||
#### Parameters | ||
@@ -452,17 +437,17 @@ | ||
| :------ | :------ | | ||
| `transactions` | `any`[] | | ||
| `program` | `string` | | ||
#### Returns | ||
`Promise`<`any`[]\> | ||
`Promise`<{ `records`: `any`[] }\> | ||
#### Defined in | ||
[adapter.ts:29](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L29) | ||
[adapter.ts:34](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L34) | ||
___ | ||
### signAndSendTransaction | ||
### requestTransaction | ||
▸ **signAndSendTransaction**(`transaction`, `options?`): `Promise`<{ `signature`: `any` }\> | ||
▸ **requestTransaction**(`transaction`): `Promise`<{ `transactionId?`: `string` }\> | ||
@@ -473,38 +458,31 @@ #### Parameters | ||
| :------ | :------ | | ||
| `transaction` | `any` | | ||
| `options?` | `any` | | ||
| `transaction` | `AleoTransaction` | | ||
#### Returns | ||
`Promise`<{ `signature`: `any` }\> | ||
`Promise`<{ `transactionId?`: `string` }\> | ||
#### Defined in | ||
[adapter.ts:30](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L30) | ||
[adapter.ts:35](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L35) | ||
___ | ||
### signMessage | ||
### requestViewKey | ||
▸ **signMessage**(`message`): `Promise`<{ `signature`: `Uint8Array` }\> | ||
▸ **requestViewKey**(): `Promise`<{ `viewKey`: `string` }\> | ||
#### Parameters | ||
| Name | Type | | ||
| :------ | :------ | | ||
| `message` | `Uint8Array` | | ||
#### Returns | ||
`Promise`<{ `signature`: `Uint8Array` }\> | ||
`Promise`<{ `viewKey`: `string` }\> | ||
#### Defined in | ||
[adapter.ts:34](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L34) | ||
[adapter.ts:32](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L32) | ||
___ | ||
### signTransaction | ||
### signMessage | ||
▸ **signTransaction**(`transaction`): `Promise`<`any`\> | ||
▸ **signMessage**(`message`): `Promise`<{ `signature`: `Uint8Array` }\> | ||
@@ -515,10 +493,10 @@ #### Parameters | ||
| :------ | :------ | | ||
| `transaction` | `any` | | ||
| `message` | `Uint8Array` | | ||
#### Returns | ||
`Promise`<`any`\> | ||
`Promise`<{ `signature`: `Uint8Array` }\> | ||
#### Defined in | ||
[adapter.ts:28](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L28) | ||
[adapter.ts:31](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L31) |
@@ -19,2 +19,2 @@ [@demox-labs/aleo-wallet-adapter-leo](../README.md) / [Exports](../modules.md) / LeoWalletAdapterConfig | ||
[adapter.ts:48](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L48) | ||
[adapter.ts:47](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L47) |
@@ -30,3 +30,3 @@ [@demox-labs/aleo-wallet-adapter-leo](../README.md) / [Exports](../modules.md) / LeoWalletEvents | ||
[adapter.ts:21](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L21) | ||
[adapter.ts:24](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L24) | ||
@@ -51,2 +51,2 @@ ___ | ||
[adapter.ts:22](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L22) | ||
[adapter.ts:25](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L25) |
@@ -30,2 +30,2 @@ [@demox-labs/aleo-wallet-adapter-leo](README.md) / Exports | ||
[adapter.ts:51](https://github.com/demox-labs/aleo-wallet-adapter/blob/eb32ab9/packages/wallets/leo/adapter.ts#L51) | ||
[adapter.ts:50](https://github.com/demox-labs/leo-wallet-adapter/blob/a4e012e/packages/wallets/leo/adapter.ts#L50) |
@demox-labs/aleo-wallet-adapter-leo / [Exports](modules.md) | ||
# Wallet Adapter for Aleo Apps | ||
Modular TypeScript wallet adapters and components for Aleo applications. | ||
- [Demo](https://demo.leo.app) | ||
- [Base Docs](https://github.com/demox-labs/aleo-wallet-adapter/blob/main/packages/core/base/docs/modules.md) | ||
- [React Docs](https://github.com/demox-labs/aleo-wallet-adapter/blob/main/packages/core/react/docs/modules.md) | ||
- [React UI Docs](https://github.com/demox-labs/aleo-wallet-adapter/blob/main/packages/ui/docs/modules.md) | ||
- [Leo Adapter Docs](https://github.com/demox-labs/aleo-wallet-adapter/blob/main/packages/wallets/leo/docs/modules.md) | ||
This is a quick setup guide with examples of how to add Wallet Adapter to a React-based Aleo app. | ||
## Quick Setup (using React UI) | ||
### 📲Install | ||
Install these dependencies: | ||
```shell | ||
npm install --save \ | ||
@demox-labs/aleo-wallet-adapter-base \ | ||
@demox-labs/aleo-wallet-adapter-react \ | ||
@demox-labs/aleo-wallet-adapter-reactui \ | ||
@demox-labs/aleo-wallet-adapter-leo \ | ||
react | ||
``` | ||
### 🛠️Setup | ||
```tsx | ||
import React, { FC, useMemo } from "react"; | ||
import { WalletProvider } from "@demox-labs/aleo-wallet-adapter-react"; | ||
import { WalletModalProvider } from "@demox-labs/aleo-wallet-adapter-reactui"; | ||
import { LeoWalletAdapter } from "@demox-labs/aleo-wallet-adapter-leo"; | ||
import { | ||
DecryptPermission, | ||
WalletAdapterNetwork, | ||
} from "@demox-labs/aleo-wallet-adapter-base"; | ||
// Default styles that can be overridden by your app | ||
require("@demox-labs/aleo-wallet-adapter-reactui/styles.css"); | ||
export const Wallet: FC = () => { | ||
const wallets = useMemo( | ||
() => [ | ||
new LeoWalletAdapter({ | ||
appName: "Leo Demo App", | ||
}), | ||
], | ||
[] | ||
); | ||
return ( | ||
<WalletProvider | ||
wallets={wallets} | ||
decryptPermission={DecryptPermission.UponRequest} | ||
network={WalletAdapterNetwork.Localnet} | ||
autoConnect | ||
> | ||
<WalletModalProvider> | ||
// Your app's components go here | ||
</WalletModalProvider> | ||
</WalletProvider> | ||
); | ||
}; | ||
``` | ||
### ✍🏻Signing | ||
```tsx | ||
import { WalletNotConnectedError } from "@demox-labs/aleo-wallet-adapter-base"; | ||
import { useWallet } from "@demox-labs/aleo-wallet-adapter-react"; | ||
import { LeoWalletAdapter } from "@demox-labs/aleo-wallet-adapter-leo"; | ||
import React, { FC, useCallback } from "react"; | ||
export const SignMessage: FC = () => { | ||
const { wallet, publicKey } = useWallet(); | ||
const onClick = useCallback(async () => { | ||
if (!publicKey) throw new WalletNotConnectedError(); | ||
const message = "a message to sign"; | ||
const bytes = new TextEncoder().encode(message); | ||
const signatureBytes = await ( | ||
wallet?.adapter as LeoWalletAdapter | ||
).signMessage(bytes); | ||
const signature = new TextDecoder().decode(signatureBytes); | ||
alert("Signed message: " + signature); | ||
}, [wallet, publicKey]); | ||
return ( | ||
<button onClick={onClick} disabled={!publicKey}> | ||
Sign message | ||
</button> | ||
); | ||
}; | ||
``` | ||
### 🔓Decrypting | ||
```tsx | ||
import { WalletNotConnectedError } from "@demox-labs/aleo-wallet-adapter-base"; | ||
import { useWallet } from "@demox-labs/aleo-wallet-adapter-react"; | ||
import React, { FC, useCallback } from "react"; | ||
export const DecryptMessage: FC = () => { | ||
const { publicKey, decrypt } = useWallet(); | ||
const onClick = async () => { | ||
const cipherText = "record...."; | ||
if (!publicKey) throw new WalletNotConnectedError(); | ||
if (decrypt) { | ||
const decryptedPayload = await decrypt(cipherText); | ||
alert("Decrypted payload: " + decryptedPayload); | ||
} | ||
}; | ||
return ( | ||
<button onClick={onClick} disabled={!publicKey}> | ||
Decrypt message | ||
</button> | ||
); | ||
}; | ||
``` | ||
### 🗂️Requesting Records | ||
```tsx | ||
import { WalletNotConnectedError } from "@demox-labs/aleo-wallet-adapter-base"; | ||
import { useWallet } from "@demox-labs/aleo-wallet-adapter-react"; | ||
import React, { FC, useCallback } from "react"; | ||
export const RequestRecords: FC = () => { | ||
const { publicKey, requestRecords } = useWallet(); | ||
const onClick = async () => { | ||
const program = "credits.aleo"; | ||
if (!publicKey) throw new WalletNotConnectedError(); | ||
if (requestRecords) { | ||
const records = await requestRecords(program); | ||
console.log("Records: " + records); | ||
} | ||
}; | ||
return ( | ||
<button onClick={onClick} disabled={!publicKey}> | ||
Request Records | ||
</button> | ||
); | ||
}; | ||
``` | ||
### 📡Requesting Transactions | ||
```tsx | ||
import { | ||
Transaction, | ||
WalletAdapterNetwork, | ||
WalletNotConnectedError | ||
} from "@demox-labs/aleo-wallet-adapter-base"; | ||
import { useWallet } from "@demox-labs/aleo-wallet-adapter-react"; | ||
import React, { FC, useCallback } from "react"; | ||
export const RequestRecords: FC = () => { | ||
const { publicKey, requestTransaction } = useWallet(); | ||
const onClick = async () => { | ||
if (!publicKey) throw new WalletNotConnectedError(); | ||
// The credits.aleo transfer proving key can be found here: https://aleo-public.s3.us-west-2.amazonaws.com/testnet3/transfer.prover.837ad21 | ||
// For other programs, you will need to host your proving key file | ||
const provingKey: Uint8Array = [...]; | ||
// The record here is an output from the Requesting Records above | ||
const record = `'{"id":"0f27d86a-1026-4980-9816-bcdce7569aa4","program_id":"credits.aleo","gates":"200000","spent":false,"data":{}}'` | ||
// Note that the inputs must be formatted in the same order as the Aleo program function expects, otherwise it will fail | ||
const inputs = [JSON.parse(record), "aleo1kf3dgrz9...", `${amount}u64`]; | ||
const aleoTransaction = Transaction.createTransaction( | ||
publicKey, | ||
WalletAdapterNetwork.Testnet, | ||
'credits.aleo', | ||
'transfer', | ||
inputs, | ||
provingKey.buffer | ||
); | ||
if (requestTransaction) { | ||
// No error is success, getting transaction id is currently not supported for privacy concerns | ||
await requestTransaction(aleoTransaction); | ||
} | ||
}; | ||
return ( | ||
<button onClick={onClick} disabled={!publicKey}> | ||
Request Transaction | ||
</button> | ||
); | ||
}; | ||
``` |
@@ -1,1 +0,1 @@ | ||
export * from './adapter.js'; | ||
export * from './adapter'; |
{ | ||
"name": "@demox-labs/aleo-wallet-adapter-leo", | ||
"version": "0.0.10", | ||
"version": "0.0.11", | ||
"description": "Aleo wallet adapter for the Leo Wallet.", | ||
@@ -12,3 +12,3 @@ "module": "dist/index.js", | ||
"dependencies": { | ||
"@demox-labs/aleo-wallet-adapter-base": "^0.0.11", | ||
"@demox-labs/aleo-wallet-adapter-base": "^0.0.12", | ||
"nanoid": "^4.0.0" | ||
@@ -18,9 +18,13 @@ }, | ||
"build": "tsc", | ||
"doc": "typedoc --plugin typedoc-plugin-markdown index.ts" | ||
"doc": "typedoc --plugin typedoc-plugin-markdown index.ts", | ||
"bundle": "webpack" | ||
}, | ||
"devDependencies": { | ||
"ts-loader": "^9.4.1", | ||
"typedoc": "^0.23.18", | ||
"typedoc-plugin-markdown": "^3.13.6", | ||
"typescript": "^4.8.4" | ||
"typescript": "^4.9.3", | ||
"webpack": "^5.75.0", | ||
"webpack-cli": "^5.0.0" | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
203
149374
6
22
608
1
+ Added@demox-labs/aleo-wallet-adapter-base@0.0.12(transitive)
- Removed@demox-labs/aleo-wallet-adapter-base@0.0.11(transitive)